MIRACLE
メールサービス申込 ユーザー登録 パートナー情報
お問い合わせ FAQ サイトマップ
MIRACLE LINUXの特長 製品紹介 サービス案内 購入 サポート 技術フォーラム

プロフィール

吉岡 弘隆 - よしおか ひろたか

日本OSS推進フォーラム ステアリングコミッティ委員
OSDL Board of Directorsを歴任
カーネル読書会主宰

2000年6月、ミラクル・リナックスの創業に参加。
95年~98年、米国OracleにてOracle RDBMSの開発をおこなっていた。
98年にNetscapeのソースコード公開(Mozilla)に衝撃をうけ、オープンソースの世界に飛びこみ、ついには会社も立ち上げてしまう。
2008年6月取締役CTOを退任し一プログラマとなった。

ミラクル関連リンク

採用情報

サイト検索

2008年9月

  1 2 3 4 5 6
7 8 9 10 11 12 13
14 15 16 17 18 19 20
21 22 23 24 25 26 27
28 29 30        

« なぜソースコードを読むのか? | メイン | シリコンバレー精神 »

Lions' Commentary on UNIXを読む。

UNIXバージョン6のソースコードとそれの註釈と解説をした伝説の名著である。日本語訳もある。ISBN4-7561-1844-5

当時のUNIXの中核部分はたった1万行弱のコンパクトなプログラムであった。そのために学生が学習するためにはもってこいだった。

  UNIXはすでに利用可能なシステム上で実行されている。
  UNIXはコンパクトで理解しやすい。
  UNIXは広範囲に渡る非常に有用な機能群を提供している。
  UNIXは元来おもしろく、実際多くの分野で新天地を開拓している。
  まえがき(249ページ)

現在のOSはどれもこのサイズをはるかに凌駕している。Linuxは数百万行のサイズである。

OSを教えるための主なアプローチとして次の3つがあるとLionsは記している。

1) 一般原理

基本的な原理を詳細に説明し、さまざまな既存のシステムを参照しながら解説する。(中略)多くの学生はここから十分に学び取るほどには習得もしないし、経験を積むこともない。

2) ビルディングブロック

学生達は自分たちで小さな、あるいは"おもちゃの"オペレーティングシステムを組み立てられるようになる。確かにこれは価値ある学習になることがあるが、正確に系統立てて学ぶには、実際のオペレーティングシステムの複雑さと精巧さを取り込まないわけにはいかない。

3) ケーススタディ

これは元々、コンピュータサイエンスに関するACMカリキュラム委員会の報告の中のシステムプログラミングコースのために推奨されたアプローチである。
10年前、適切なシステムを十分な学生に利用できるようにするコストは単純にいって高過ぎたので、「コースの大部分を1つのシステムの研究にあてる」ことを唱えるこのアプローチは非現実的であった。
10年がたち、経済状況は際立って変化し、ミニコンピュータシステムが研究の主題になるならば、もはやコストはそれほど問題にならなくなっている。既存のシステムの詳細な分析に取りかかるアプローチの持つ多くの利点はこの時点で到達可能である。
われわれは、あらゆる局面で、稼働しているオペレーティングシステムを学生が研究する機会を得ることは非常に有益であると考える。
その上で、コンピュータサイエンスを専攻している学生が自分のキャリアの中で少なくとも一度はかなり重要なプログラムを読み、理解することに直面することは、確かによいことである。

OSほどの複雑さをもったものを学ぶためには、適切なコース、カリキュラムが必要だが、Lionsの著書は適度な分量で入門書として適していると思う。OSが持つべき機能をトップダウンで解説した一般原理アプローチの教科書は多いが、学生がそこから学ぶものは低いという立場をLionsはとる。わたしも、その通りだと思うが、OSが持つべき共通のアーキテクチャというのはあるので、その語彙を統一するためには標準的な教科書は必要である。

一方でケーススタディから学べるものは多い。実際の実装上のトレードオフ、数々の制約の中でのトレードオフなど理論ではないドロ臭さを学べる。

オープンソースソフトウェアの実装は、先人の知恵を学ぶ宝庫である。それをどのように学ぶかという方法論が実は強く求められているのである。

トラックバック

このページのトラックバックURL:
http://www.typepad.jp/t/trackback/4447/6471873

このページへのトラックバック一覧 Lions' Commentary on UNIXを読む。:

コメント

コメントを投稿

会社情報 採用情報 個人情報保護方針 商標等取り扱い事項 English
Copyright(c)2000-2006 MIRACLE LINUX CORPORATION. All Rights Reserved.