MITのOS講義で、Unix Version6に出会った
先日藤原博文氏の「パソコン初心者の館」掲載の
http://www.pro.or.jp/~fuji/pasocomlife/2009-09-12.html
という記事を読んだ。
そこでは
MIT OpenCourseWare というのがあり、非常にたくさんのコースが用意されている。特別講義がちょろっと公開される日本と違って、実際の講義、それも20コマ、30コマある講義が全部ビデオで公開されている。
という紹介があった。
なので、早速コンピュータエンジニアリングの講義を眺めてみた。
自分は脳みそがアルコールで腐っていても一応OS屋。なので、OSの講義を覗いてみることにした。
で、教材を見て驚いた。特に↓。
http://ocw.mit.edu/courses/electrical-engineering-and-computer-science/6-828-operating-system-engineering-fall-2006/readings/xv6.pdf
どこかで見たことがあると思ったら、"Lions Commentary on UNIX"に書かれていたUnix Version6のソース書式だ、これ。しかし、コメントを見ると「x86」だとか「Segment」とか書いてある。
どうも、Unix Version6をx86に移植したものを教材として使っているらしい。さすが、MIT。やることが違う。
そして、これはカーネルコードリーディングのまたとない教材であると考える。
それは、カーネルの周辺実装がシンプルなためである。
Unixの機能概要、x86の弄り方、どれもこれもシンプルである。行数も全部で7000行未満。LinuxやBSD、Solarisのコードに立ち入る前に一度読んでみるとよいと思う。
一度基本に立ち返って読んでみますか........。
追記
MITのOpenCourseWareでコンピュータサイエンスの講義一覧は↓です。いろいろと覗いてみてはいかがでしょうか?
http://ocw.mit.edu/courses/electrical-engineering-and-computer-science/