2007-11-03 はじめてのカーネル・ソース 第1回 どうしたら読めるようになるのか:ITpro セキュリティ 確かにKernelソースを読むことはないですねぇ・・・・結構大変ってイメージがありますし。 でも興味のあるモジュール(ファイルシステムとかSWAPとかネットワークとか)のみを限定して読むんだったらそんなに大変じゃないよって記事ですね。 オープンソースのLinuxは,残念ですが誰も教えてくれません(読書会などは開催されていますが,いきなり参加するのはなかなかハードルが高いものです)。ですから,私は約5年もかかりました。しかし,その5年のうち最初の4年は,どのようにすればカーネル内部を読めるのかを知るためだけに費やしました。つまり,最初の1歩に時間がかかるのです。 データ構造やプログラム構造など意外と知らなくてはならないKernelを読むこつは少ないそうです。 4年もかけて理解するこつ なので、多分これだけで理解できる人は少ないと思いますが、まずは糸口ってことで。 4年もかかって悟ったのは,「カーネルを読むための基礎知識は意外に少ない」ということでした。その第一歩を本連載の読者の皆さんにお教えしようと思っています。いったん読み方が分かれば,早いものです。 具体的には,知っていなければならない技術は,“たったの5項目”程度です。 ・データ構造の表現方法 ・プログラム構造の知識 ・カーネルをコンパイルする技術 ・ライブラリの利用・指定方法 ・エラー表示の確認方法 5MB程度しかなかったんだ・・・知らなかった カーネルのバージョンは一概に,「新しい=良い」というわけではありません。Linux-1.0のファイルはtar圧縮で5Mバイトしかありませんから,より短時間で読むことができます。しかし,今からカーネルを読み始めるなら,最新技術を取り入れているバージョン2.6の方が良い(長い目で見て役に立つ)でしょう。