ここ最近、週末は本屋で本を衝動買いして読書しています。
技術書ばかり買っているので、たまには読み物を読んでみようと思って「闘うプログラマー[新装版] ビル・ゲイツの野望を担った男達」を読んでみました。
- 作者: G・パスカル・ザカリー,山岡洋一
- 出版社/メーカー: 日経BP社
- 発売日: 2009/07/23
- メディア: 単行本
- 購入: 23人 クリック: 203回
- この商品を含むブログ (64件) を見る
ざっと流し読みしましたがとても面白かったです。
Windows NT の開発プロジェクトを描いた話で、その中心となった wikipedia:デビッド・カトラー (DECでVMSを開発した人)を中心に描いたドキュメンタリーです。
面白いエピソードがたくさんありました。
例えば、カトラーは NT のカーネルをページングさせない設計にしていたが、カーネギー・メロン大学で wikipedia:Mach を開発していて Microsoft に転職していた wikipedia:リチャード・ラシッド の提案があって、最終的にカーネルをページングするようにしたと書かれています。
仕事で使っている Windows XP Professional のレジストリを変更してカーネルがページングされないようチューニングしていますが、これにはこんな歴史があったとのか思いました。具体的には以下の設定をしています。
HKEY_LOCAL_MACHINE\SYSTEM\CurrentControlSet\Control\Session Manager\Memory Management\ 名前: DisablePagingExecutive 種類: REG_DWORD データ: 1
このチューニング方法を知った時は「カーネルをページングするのか」と思いましたが、NT を開発していた90年代初頭のパソコンのメモリは4MB程度だったらしいので当時はカーネルをページングさせるのは妥当な判断だったのだと思います。
その他にも、wikipedia:NT File System にジャーナリング機能を実装したためにパフォーマンス問題で苦労した話しや、カトラーが「自分で作ったドッグフードを食え」と言って、NT の開発者に NT を使わせてイヤでもバグを直さざるをえないようにしたなど面白いエピソードがたくさん書かれています。