Is MINIX really the father of Linux? (Is UNIXv7 really the father of MINIX? ( ... ===================================== $Date: 2004/05/21 23:00:58 $ $Revision: 1.1 $ 2004-05-21 heno (minix-up project) http://minix-up.sourceforge.jp/ (official) http://osdev-j.sourceforge.jp/?minix-up (another info) この文書について ---------------- このドキュメントは、MINIXとLinuxに関する一般的な誤解を ある程度解消する目的でまとめたものです。 元々はスラッシュドット ジャパン読者への応答として書き始めた ものですが、長くなりすぎたのでこちらに移しました。 - スラッシュドット ジャパン | 「Linuxの父はLinusではない」!? -- http://slashdot.jp/article.pl?sid=04/05/20/1440223 - Slashdot | Linus Not The Father Of Linux, According to Report -- http://slashdot.org/article.pl?sid=04/05/17/112218 - CNET News.com: Is Torvalds really the father of Linux? -- http://news.com.com/2100-7344-5216651.html - AST: Some notes on the "Who wrote Linux" Kerfuffle -- http://www.cs.vu.nl/~ast/brown/ ※個人的に、報道されている内容やタネンバウム博士のメッセージ  などを読む限りでは、調査不足が否めない調査報告でありそう  に見え、やや残念に思っています。 はじめに -------- 私はMINIXのソースや情報を集めるプロジェクトを まったりと続けています。あと三日で二年になります。 もちろんこのプロジェクトにとってLinuxはオマケの立場で、 しかも私には実際にコードを比較できる能力はありませんが、 それをやろうという方々のため、また、この話題に初めて 取り組む方向けに、以下にいくつかの参考情報を挙げます。 (書籍「UNIXの1/4世紀」や "LINUX is OBSOLETE" などについ ては省略) 以下の情報は必要に応じて更新します。 ※査読/翻訳して下さる方はいらっしゃいませんか? MINIXとLinuxに関する最近の動向 ------------------------------ MINIX 2.0.4 がリリースされています。 http://www.cs.vu.nl/pub/minix/2.0.4/ SCO社のLinuxに対する論争を引き金として、Linuxを含めた Unixの年表を更新するプロジェクトが海外で進められていますが、 もちろんMINIXもその中に含まれています。 Groklaw's New Group Project -- The Timeline Project http://www.groklaw.net/article.php?story=20040203213604869 http://healconsulting.com/SCO/timeline.php MINIX 1.5 を始めとするメジャーバージョン、および Linuxの入手可能な過去のソースもインターネット上にあり 比較する事が可能です。ざっと眺めるだけならWebからも 参照可能です(後述) Linuxの誕生に特化したTimeline (※書き下ろし) ------------------------------------------------ - 1986年 Intel i386が登場 - 1990年夏、既にアセンブラオタクであった大学生のLinusは  秋からの受講に先立ってMINIX本を購入し、没頭する  (この書籍にはMINIXのプログラムは付属していなかった)  (参考文献*1 P89) - 1990年秋、ヘルシンキ大がUNIXを導入  Linusは秋よりOSの講義を受け、Unixのコンセプトに感心する  (教科書はMINIX本) (*1 P89) - 1991年1月5日 LinusがMINIXを動かすためのPCを入手  (i386機は初めて) (*1 P100) - 1991年2月ごろ MINIXのプログラム(フロッピーディスク16枚)  が届き、使い始めるがすぐに不満を持つ (*1 P101) - やがてLinusがLinux(Linux's MINIX)と呼ぶ様になるプログラム  が、大学に電話で接続するための通信ソフトとして企画される。  i386の勉強を兼ねる。 「このプロジェクトはミニックスの上ではやりたくなかった。  なんのOSも動いていない裸のハードウェアレベルでやり  たかった。」(*1 P102) - 1991年3月(あるいは4月) テスト用のプログラムでスレッドの  切り替えができる様になる (*1 P104) - 1991年7月3日 POSIXの仕様について興味を持ち、  comp.os.minixに質問を投稿する - POSIXのメールがきっかけでLinusのプロジェクトに興味を持った  (*1 P132) Ari Lemmke が、公開場所としてftpサーバーの  アカウントを与え、Linux というディレクトリを作成する  http://www.funet.fi/~arl/ - POSIXについて返答が得られなかったため、Sunのシステム  コールのマニュアル(=外部動作)を読みつつシステムコールを  一つ一つ実装し、ついにシェル(bash)が動作する (*1 P133) - 1991年8月25日 MINIXのコードが入っていない(ので当時の  MINIXの様にライセンスの問題や、パッチを拒否する姿勢や、  性能面などの、要は面倒なことが無い)フリーのOSについて  comp.os.minixに投稿する  (Subject: What would you like to see most in minix?)  "Yes - it's free of any minix code, and it has a  multi-threaded fs." - 1991年9月17日 公開用のバージョン 0.01 がコンパイルされる  環境は MINIX 1.5.10 + MINIX386 patch (クロスコンパイル)  (*2) - 1991年9月17日 バージョン 0.01 の公開(ftp)  ※comp.os.minixへのアナウンスは行われていない  公開にあたり、このプログラムは freax (free + freak + x)  という名称に変更される。ただし、ftpサーバーのLinuxという  ディレクトリの下に置かれる (*2ほか)  ※ソースにおいては両方の名前が混在している   - 1991年10月5日 0.02のアナウンスが comp.os.minix で行われる   (Subject: Free minix-like kernel sources for 386-AT)  "It is just version 0.02, but I've successfully run   bash/gcc/gnu-make/gnu-sed/compress etc under it. " 参考文献 -------- *1 書籍「JUST FOR FUN - The story of an accidental revolutionary」  邦題「それがぼくには楽しかったから」(ISBN:4-7968-8001-1) *2 MINIX timeline (minix-up project)   http://minix-up.sourceforge.jp/timeline/TIMELINE.html Linux Kernel Version History (リリース日時など) http://ftp.cdut.edu.cn/pub2/linux/kernel/history/index.html ※バージョン0.02は残念ながら、この世から失われています Webからのアクセス ----------------- Linux 0.01 および、MINIX 1.5のソースなどは以下よりWebブラウザで 閲覧することが可能です。 ※MINIX 1.5.10とMINIX386パッチは入手できていません。  所在がわかれば収録させていただきます http://minix-up.sourceforge.jp/cgi-bin/l.cgi/l/li/linux/?only_with_tag=LINUX_1_0_0 http://minix-up.sourceforge.jp/cgi-bin/l.cgi/l/mi/minix/?only_with_tag=MINIX_1_5 EOF