はじめてのOSコードリーディング

コノルの本棚には技術書から絵本まで、たくさんの本がずらりと並んでいます。
技術書では普段業務で使用している Objective-C や Ruby、JavaScript に関するものが多いです。
そんな本たちの中で最近、私が特に気に入っている本がこちら。

はじめてのOSコードリーディング ――UNIX V6で学ぶカーネルのしくみ
はじめてのOSコードリーディング

UNIX V6 はベル研究所が 1975 年にリリースした OS です。
今日も広く使われている Linux や BSD はこの UNIX の流れを組んでいます。
コノルでも、サーバ OS には UNIX 系 OS である Linux を多く採用しています。

ちなみに OS の中核となるカーネルのソースコードは日々成長していて、Linux ではすでに1500万行を超えているとか。
対して UNIX V6 のソースコードは1万行、現在の Linux と比べると大変コンパクトです。

本書ではこの UNIX V6 のソースコードを通し、UNIX 系 OS の基礎やコンピュータシステムの全体像を知ることができます。
解説も丁寧で、図や表も多く、全体的にとても読みやすい本だと思います。

もちろん、一筋縄ではいかないところもあります。
何しろ UNIX V6 は 40 年近く前の OS です。当然、当時ならではの仕様や事情を含んでいるので、背景を調べずに読み進めていくとつまずいてしまうことがあるかもしれません。
またソースコードの行数自体は少ないのですが、使用されている C 言語の仕様が現在と異なっていたり、アセンブラのコードが出てきたりとなかなか大胆な面も。

しかしこれらの点も「コンピュータの歴史や当時の背景を知るきっかけになる」と捉えることができるのではないでしょうか。
当時の限られた資源の中でここまで……!と、読んでいて思わず感動してしまうことも。
OS のしくみに興味を持っている方にはぜひおすすめしたい、読み応えのある一冊です。

ただ@プログラマ

コニョル

たくさんの工夫が詰まっているコンピュータってすごいねー

コメントを残す

メールアドレスが公開されることはありません。 * が付いている欄は必須項目です

次のHTML タグと属性が使えます: <a href="" title=""> <abbr title=""> <acronym title=""> <b> <blockquote cite=""> <cite> <code> <del datetime=""> <em> <i> <q cite=""> <strike> <strong>