日刊アスキーの原です。「日刊アスキーLinux」をスタートさせて、すでに18日が経ちました。
現在、ブックストアの開店準備に大忙しですが、そのお店に並べる本の量の多さに驚いています。担当者によると、現在データベースに入っている書籍は約140冊あり、それが増え続けているというのです。確かに書店に行ってコンピュータ書籍のコーナーを見渡すと、急に配置が変更され、突如Linuxコーナーが出現していて驚かされることがあります。専門誌がどんどん創刊されるくらいの人気OSなのですから当然の状況なのでしょう。
私は日刊アスキー編集部とともに、Microsoft関連のプログラミング専門誌である通称「MSJ」と「MIND」という雑誌の編集部を兼任しています、OSに関するアーキテクチャや内部構造を解説した記事を読むと、最初はワクワク、分かってくると思わずウットリ、最後にクラクラしてしまうタイプの人間です。ですから、ぜひLinuxに関しても内部構造などが分かりやすくまとまった書籍や記事が読みたいと思っていました。
以前、Microsoft関係の仕事をしたこともあって、MS-DOSやWindows、OS/2に関するいろいろな(噂)話を聞いた記憶があります。確かOEMメーカー向けに出荷するパッケージは、「OEMアダプテーション・キット」と呼ばれ、ほとんどがバイナリで提供され、メーカー側の開発者がソースコードを見ることはできない。MS-DOSのソースのほとんどがアセンブラコードで記述されており、C言語が使われているのは「DOS Shell」と呼ばれるプログラムの一部である。Microsoftのソースコードには徹底的にコメントが記述されていて、担当のプログラマが変わって、他の人間が読んでもハッキリと分かるように管理されている。たとえば、コメントが書かれた行には「ここはコメントである」とコメントが付くぐらいの徹底ぶりだということです。
これらの話を聞いた当時は、MS-DOSがバージョン5.0でWindowsがまだ「3.0」の時代です。私は「COMMAND.COM」の中にはきっと「DIR.ASM」なんて内部コマンドが書かれたファイルがあるんだろうなぁなどといった想像をしていました。
ところで、ソースコードが公開されていて、誰でもがその内容を読み勉強することができるというのは、Linuxの大きな特徴です。それを世界中のコミュニティの開発者がよりよいものにしようと力を合わせているのだと聞かされたときは、たいへんな驚きでした。 以前「MINIX」が流行したときもインストールして遊んでみたり、現在では「Free DOS」などにも興味があるのですが、なかなかその奥深くまで踏み込んでいくきっかけが掴めない(一番の原因は、推理小説ばかり読んでいるから)。「なんか俺にも理解できそうな、いい本はないかなぁ~」と言っていたら、スタッフが「ふつ~、これ読むでしょ。キホンですよ、キ・ホ・ン」とカタカナで教えてくれたのが以下の書籍です。
「Linuxカーネルインターナル」(発売:アスキー、価格:4800円) |
「Lions' Commentary on UNIX」(発売:アスキー、価格:3800円) |
そう言えば、つい先日発売されたばかりの「日経Linux」(創刊前号)の特集は「ソースから迫るカーネル2.2の実像」でした。その他、かつて「UNIX MAGAZINE」では、「UNIX Communication Notes」の中で、4.4BSD Liteを対象とした「カーネルを読もう」という連載が17回にわたって行なわれたことがあると聞きました。
みなさんは、どういった本や雑誌を読んで勉強しているのでしょうか。ぜひ、お教えいただきたいと思います。「そりゃ無理だよ! プログラミングというのは一つの芸術なのであって、理解するにも才能が必要なのさ」と言われれば、元も子もないのですが。もし「俺の頭の中にあるプログラミングのノウハウと、芸術的センスを伝授してやろう!」という読者の方がいらっしゃったら、ぜひ、ご連絡ください。私が本にします。
それでは、また。
(原 哲哉)