Linux2.6.11のソースコードを解説した本です。2.6.11は2005年ごろのものですので、今ではやや古くなっています。
本文だけでも910ページという分厚い本です。
本書の前書に「前もって必要となる知識はないが、C言語と多少のアセンブラの知識が必要」と書かれているが、それだけでは無理だと思います。
私が考えるに以下のような前提知識が必要と思われます。
1.C言語(ポインタを完全に理解する必要あり)
2.LINUXの仕様の知識
3.LINUXプログラミングの知識。特にプロセスやスレッド関係。
4.x86アーキテクチャの知識。特にアセンブラとMMU関係。
2,3,4に関しては本書にも説明が書かれていますが、本書の説明は全体的に分かりにくいので、事前にある程度知っていないと理解しにくいと思われます。
本書の使い方ですが、知識がある人は知らない部分だけを読めば良いのですが、
カーネルのソースコードを読むのが初めての人の場合、ほとんど読むしかないような気がします。
というのも各章がお互いに絡み合っているため、カーネル未経験者が部分読みで理解するのは困難と思われます。
しかし、本文が910ページもあるのでなかなか読めるものではありません。
本書を読むだけでかなりの能力がいるのではないでしょうか。
文章は翻訳本によくあるように読みやすいとは言えません。
微妙な日本語にたびたび遭遇します。
説明も文章だけで説明しすぎているところが多くてもっと工夫がほしいと思いました。
しかし、LINUXカーネルを説明した本格的な書籍は今のところ本書しかないと思われます。
ソフトバンククリエイティブ「LINUXカーネル解読室2.6」は説明が簡潔すぎて知識のある人向けだと思われます。
(参考)
http://www.amazon.co.jp/dp/4797338261
本書を読み終わってもカーネルソースコードの概要程度に思った方がいいと思います。
それだけLINUXの世界は広大なのです。