第3章:GNUとLinuxの出会い ー 自由なUNIX互換OSの誕生

TECH

はじめに:UNIXに自由を求めた者たち

UNIXは1970年代以降、商用化され、ライセンスも次第に厳しく制限されるようになりました。その影響で、ソフトウェアのソースコードを自由に共有・修正・再配布する文化が次第に失われていきました。

そんな中、「完全に自由なUNIX互換OSを作る」という挑戦が始まります。それがGNUプロジェクトです。

この章では、まずGNUとは何かを明確に説明し、その後、GNUとLinuxカーネルが出会って「GNU/Linux」が誕生するまでの流れを詳しく解説します。


1. GNUとは何か?── UNIXの自由な再構築プロジェクト

**GNU(グヌー)**とは、「GNU’s Not UNIX」の再帰的頭字語で、1983年にリチャード・ストールマンが開始したプロジェクトです。

■ GNUプロジェクトの目的:

  • UNIXと互換性を持ちつつ
  • 完全に自由なソフトウェアとして
  • 1から新しいオペレーティングシステムを作ること

つまり、「UNIXを再発明するが、商用ライセンスから完全に解放されたものを作る」という試みでした。

■ リチャード・ストールマンと自由ソフトウェア運動

MITのAIラボで活動していたストールマンは、かつてのハッカー文化(自由な情報共有)を守るために、以下の「4つの自由」を掲げました:

  1. プログラムを実行する自由
  2. ソースコードを学習・修正する自由
  3. コピーを再配布する自由
  4. 改良版を配布する自由

これらの自由を保証するために定められたのが、GNU General Public License(GPL)です。


2. GNUの進捗:OSの“上半分”は完成していた

GNUプロジェクトは、UNIXと互換性を持つ多くのソフトウェア群を開発しました。

コンポーネント内容
シェルbash, sh など
コンパイラgcc
ライブラリglibc
ユーティリティsed, awk, ls, cp, make, find など
エディタemacs
ドキュメントinfo, man

しかし、致命的に欠けていたのが「完成したカーネル」でした。

GNUプロジェクトが開発していた独自カーネル「Hurd(ヒュード)」は、設計思想こそ革新的でしたが、複雑すぎて完成に至らず、OSとして動かせる状態にはなりませんでした。


3. Linuxの誕生:必要から生まれたカーネル

1991年、フィンランドの大学生リーナス・トーバルズ(Linus Torvalds)は、当時教育用途に使われていたMINIXというUNIX互換OSに不満を持ち、自らカーネルの開発に乗り出しました。

■ 1991年8月25日の有名な投稿(要約)

Hello everybody out there using minix –
I’m doing a (free) operating system (just a hobby, won’t be big and professional like gnu)…
— comp.os.minix ニュースグループにて

■ 初期のLinuxの特徴:

  • Intel 386向けのモノリシックカーネル
  • 仮想メモリ・マルチタスク対応
  • MINIXと互換性のあるファイルシステム
  • 当初は独自ライセンス → 後にGPLへ変更

4. GNU + Linux = GNU/Linux の誕生

GNUはカーネル以外のOS構成要素をほぼ完成させていました。そこにLinuxカーネルが加わったことで、完全なUNIX互換の自由なOSが初めて成立しました。

この組み合わせが、いわゆる「GNU/Linux」です。

■ GNU/Linuxの構造(概念図):

+-------------------------+
| bash, gcc, emacs  ← GNU |
+-------------------------+
| glibc, coreutils   ← GNU|
+-------------------------+
| Linux Kernel       ← Linus |
+-------------------------+
| ハードウェア |

この「GNUツール群+Linuxカーネル」が、今や世界中で使われるオープンソースOSの王者となったのです。


5. ディストリビューションの登場と普及

Linuxを実際に使いやすくするため、GNU/Linuxをまとめて配布する形(ディストリビューション)が登場します。

ディストリビューション特徴・登場年
Slackware(1993)最古の現役ディストリ
Debian(1993〜)コミュニティ主導、安定性重視
Red Hat Linux(1995)商用サポート付き、後にRHELへ
SuSE Linux(1994〜)ドイツ発、後のopenSUSE

それぞれのディストリビューションは、LinuxカーネルとGNUソフトに独自の構成や管理ツールを加え、実用的なOSパッケージとして成長していきました。


6. UNIXとGNU/Linuxの思想の違い

観点UNIXGNU/Linux
ライセンス商用または緩やかな自由(BSDなど)強い自由(GPL)
設計一貫性と職人的設計分散的で開発者主導
利用主体企業、大学コミュニティ、個人
目的信頼性重視の実装ソフトウェア自由主義
カーネル設計モノリシック(BSD等)モノリシック+モジュール化(Linux)

GNU/Linuxは「UNIXの代替品」ではなく、「自由な未来を目指したUNIX互換システム」です。


7. 2024年のGNU/Linux

  • サーバー市場の70%以上がLinuxベース
  • AndroidはLinuxカーネルを使ったモバイルOS
  • スーパーコンピュータTOP500の100%がLinuxベース
  • 開発者・教育・IoT・クラウドで圧倒的支持
  • WSL (Windows Subsystem for Linux) によりWindowsとも融合

まとめ:自由なOSの理念が世界を変えた

GNUプロジェクトは「自由なOS」という理想を掲げました。そしてLinuxは「その理想を動かすためのカーネル」を現実にしました。
GNUとLinuxが出会い、GNU/Linuxという形で世界に広がった結果、いまや私たちの身の回りのインフラの多くがオープンで自由な思想の上に動いているのです。


コメント

タイトルとURLをコピーしました