2012年11月7日水曜日

『Linuxカーネル2.6解読室』高橋浩和 小田逸郎 山幡為佐久

ソフトバンククリエイティブ
発売日:2006-11-18

『Linuxカーネル2.6解読室』高橋浩和 小田逸郎 山幡為佐久
(レビュアー:エンジニア 久保田)

この本は書籍名にある通りLinuxカーネルのバージョン2.6について解説してくれている書籍です。

OSもアプリケーションと同じでプログラミングで動作しています。
このOSの基本機能を実装しているソフトウェアがカーネルです。
カーネルがどのような動作をしているかを知ることによって、
メモリ資源をより効率的に管理したり、万一バグが発生した際にも適切に対処できるようになります。

Linuxカーネルのコードは当時ですら500万行あったようです。
しかも現在は1500万行を超えたとか。
そんな量のコードを前にしたら読む前にビビって
「やっぱやめとこう」となりがちですが、この本ならたかだか500ページ。
ソースそのものにあたるよりも格段にとっつきやすいのではないでしょうか。
解説してくれているバージョンに関しては2.6と若干古い気はしますが、
2.6までをきちっとこの本で理解することには意味があるように思います。


本の構成としては、細かな実装の前に仕様の確認の章があり、
知識が若干不安でもなんとか読める形でまとめてくれています。

自分自身、カーネルのソースにふれるのは初めてで、
この本で抜粋されたソースを読むのだけでも大変でした。
しかし、大切な部分には一行単位で丁寧に解説をつけてくれてあり、
頑張って読み進めることでわかった気にさせてくれます。

特に構造体のメンバを表にまとめてくれていたり、
ソースコードのフロー図を書いて構造をわかりやすくしてくれていたりと
全体の構造を俯瞰するためのヒントが満載です。

まだまだ理解したとは言い難いですが、
個人的に意味があったことは全体を読み切ることで、
なんとなくカーネルが怖く無くなった気がしていることです。
この本を傍らにカーネルソースに挑戦してみよう!
という気にさせてくれます。

そんな意味でもオススメの一冊です。

0 件のコメント:

コメントを投稿