1969年T1
UNIX の誕生 ── Bell 研究所
Multics 計画から離脱した Ken Thompson が、AT&T Bell 研究所で空いていた PDP-7 上に簡略なタイムシェアリング OS を作り始めた。当初は1人のための実験だったが、Dennis Ritchie が加わり、1970年に「UNICS(後の UNIX)」と命名。C 言語(1972年)への書き換えで移植性を獲得し、その後の50年を支配する OS 系譜の起源となった。Linux、macOS、Android、iOS の祖である。
メタデータ
- 日付
- 1969年
- 年代
- 1960s
- Tier
- T1
- 参照年表
- IT全史 ── 計算機が世界を編み変える · OSの歴史
- 出典数
- 02
- 関連項目
- 03
UNIX の誕生 ── Bell 研究所
UNIX の物語は、しばしば「失敗からの転身」として語られる。それは正確である。
Multics の遺産
1960年代の中盤、MIT、General Electric、AT&T Bell 研究所の三者が共同で「Multics(Multiplexed Information and Computing Service)」という野心的な OS の開発を進めていた。当時としては前衛的な目標 ── タイムシェアリング、階層型ファイルシステム、動的リンク、リング保護、コマンド言語 ── がすべて詰まっていた。
Multics は、結果として完成した。だが、それは1969年に Bell 研究所が、計画から離脱した後のことだった。あまりに巨大で、あまりに遅く、商業的見通しが立たないと判断されたためだ。
Ken Thompson、Dennis Ritchie、Doug McIlroy ── Bell 研究所で Multics に参加していた研究者たちは、計画離脱後、それぞれの仕事に戻された。Thompson は、Multics で学んだ良い部分 ── 階層ファイル、シェル、デバイスをファイルとして扱う発想 ── を、もっと小さく、もっと単純な形で再実装したいと考えた。
そして、彼は誰も使っていない DEC PDP-7 を見つけた。
PDP-7 上の実験
PDP-7 は1965年に発売された、当時としては既にやや古い機械だった。18ビットワード、8KB のメモリ、ディスクとプリンタを備えた中規模機。Bell 研究所には別目的で1台が置かれていたが、ほとんど使われていなかった。
Thompson は、まず自分一人のための簡単なタイムシェアリング機構を書いた。階層ファイルシステム、いくつかのユーティリティ、簡素なシェル。彼の妻が出産休暇で実家に帰っていた間の3週間で、骨格はほぼ完成したと伝えられる。
1970年、Brian Kernighan(後の K&R の K)が冗談半分で「UNICS」という名を提案した。Multics の対義語めいた響きだった。やがて UNIX と綴られるようになる。
C と移植性
最初の UNIX はアセンブリ言語で書かれていた。これは、その機械の上でしか動かないことを意味した。
1972年、Dennis Ritchie は、Thompson が作っていた B 言語を発展させ、より型システムを持った「C 言語」を設計した。1973年、UNIX 自身が C で書き直された。
これが、UNIX を他のすべての OS と区別することになる決定的な性質だった。アセンブリで書かれていない OS は、それまで存在しなかった。OS は、その機械のための専用ソフトウェアであるのが当然だった。
UNIX を別の機械に移植したければ、C コンパイラさえあれば動く。これは、それまでの OS が「ハードウェアと一体不可分」だった世界に対する、根本的な発想転換だった。
Bell 研究所の制約と恩恵
AT&T は当時、独占禁止法上の同意判決により、コンピュータ事業に進出できなかった。そのため、Bell 研究所が開発した UNIX を商品として売ることもできなかった。
結果として、UNIX は名目上の使用料(実質的に郵送代と磁気テープ代)で大学・研究機関に配布された。MIT、UC Berkeley、東京大学 ── 世界中の大学院生たちが、ソースコードごと UNIX を手に入れることになる。
これが、後の UNIX の運命を決めた。商業的には十年以上「売れない OS」だったが、その間に学術界に深く根を張り、出力された大量の博士・修士・卒業生たちが、UNIX のシェル、UNIX のファイルシステム、UNIX の哲学(小さなツールを組み合わせる、というあの考え方)を、自然と業界全体に持ち込んでいくことになる。
1991年、Helsinki 大学の Linus Torvalds が「Linux」を書きはじめたとき、彼が手本にしたのは UNIX だった。2007年、Apple が iPhone OS を作ったとき、その基礎にあった OS X もまた、UNIX 系(BSD と Mach の混合)だった。
UNIX という名前を聞いたことのない人でも、現在、ほぼ全員が UNIX 系の OS を毎日使っている。