私たちが現在使っているLinuxやmacOS、さらにはAndroidやFreeBSDなどの多くのオペレーティングシステムは、共通の「祖先」を持っています。それがUNIXです。
UNIXは1969年に誕生し、コンピュータの歴史において革命的な変化をもたらしました。以降50年以上にわたり、その思想と技術は受け継がれ、拡張され、現代のOSにも深く根付いています。
この連載の序章では、UNIXの思想と構造が、なぜ「OSの王者」としての地位を築いたのかを探っていきます。
UNIX誕生の背景:Multicsの夢とその挫折
1960年代、AT&Tベル研究所、MIT(マサチューセッツ工科大学)、GE(ゼネラル・エレクトリック)は、巨大なMultics(Multiplexed Information and Computing Service)というオペレーティングシステムを共同開発していました。これは当時としては非常に野心的なプロジェクトで、マルチユーザー・タイムシェアリング・セキュリティ・階層型ファイルシステムなどを搭載しようとしていました。
しかし、複雑すぎて実用に至らず、ベル研は1969年にプロジェクトから撤退。その中にいたケン・トンプソン(Ken Thompson)とデニス・リッチー(Dennis Ritchie)たちは、Multicsの失敗を教訓に、「もっと小さく、もっとシンプルで効率的なOSを作ろう」と考えました。
これがUNIXの原点です。
UNIXの誕生(1969年)
ケン・トンプソンは、Multicsの影響を受けながらもまったく新しいミニマルなOSを、PDP-7(DEC製の小型ミニコンピュータ)上で開発しました。この最初のUNIXには、まだその名前すらついていませんでした(後に「UNICS」と呼ばれ、それが「UNIX」に変化)。
初期のUNIXの特徴:
- 小規模設計:すべてがシンプルなモジュールに分かれていた
- ツール哲学:「小さなプログラムを組み合わせて目的を達成する」思想
- すべてはファイル:「デバイス」や「プロセス」すらファイルとして扱う統一的設計
- シェルによるスクリプト制御
- 高い移植性:1973年にC言語でUNIXが書き直され、他のマシンでも移植可能に
UNIXの設計思想:最小限、最大限
UNIXの中核には、いくつかの哲学的原則がありました。
UNIX哲学の要点:
- 小さいことは良いことだ(Do one thing and do it well)
→ それぞれのプログラムは1つの仕事に特化すべき。 - ツールは組み合わせる
→ 標準入力・出力を通じて、複数のコマンドをつなげる(パイプ機能)。 - すべてをファイルとして扱う
→ デバイス、ソケット、パイプすらファイルとして操作可能。 - 移植性を優先する
→ マシン固有コードを避け、汎用性を重視。
この設計思想は、UNIXが大学や企業に広がる中で高く評価され、現在のLinuxやmacOS、さらにはWindows Subsystem for Linux(WSL)にも脈々と引き継がれています。
UNIXの名前の由来
「UNIX」という名前は、Multicsの“対義語”として生まれました。
Multicsが巨大かつ多機能だったのに対し、UNIXは“UNIplexed Information and Computing System”という冗談めいた意味合いを持ち、「単純にして強力」という逆説的なポジショニングを表現しています。
この名前は、同僚のブライアン・カーニハン(Brian Kernighan)が考案したとされています。
UNIXの影響と遺産
1970年代から1980年代にかけて、UNIXは大学(特にUCバークレー)、政府機関、研究所に無償で配布され、そのソースコードも広く読める形で公開されていたため、無数の派生バージョン(ディストリビューション)が誕生しました。
特に注目すべきなのは以下の3つ:
- BSD(Berkeley Software Distribution):TCP/IPやviなどの革新的機能を実装
- System V(AT&T系):商用UNIXの基準となり、業務用サーバーに広く使用
- GNU/Linux:UNIX互換OSとして、完全自由なオープンソースコミュニティが育てた
まとめ
UNIXは、「OSをこう設計すべきだ」という思想を生み出しました。その思想は「UNIX哲学」としてソフトウェア開発者に継承され、2024年末の今も多くの現代OSのコアに宿っています。
次回からは、UNIXの系譜をたどりながら、その思想がどのようにLinux、macOS、FreeBSD、Androidといった現在のOSに受け継がれていったのかを、時間軸に沿って詳細に解説していきます。
✅補足資料(今後挿入可能)
- UNIX系統図(年表形式)
- AT&T UNIXライセンス問題とその影響
- UNIXとPOSIX準拠の違い
コメント