Linuxの歴史

Linuxの歴史は、1991年にフィンランド人学生のリーナス・トーバルズによって、新しくフリーなオペレーティングシステム  のカーネルを製作する個人的なプロジェクトとして始まった。それ以来、成果であるLinuxカーネルがその歴史の中で途切れることなく成長し続けていることは特徴的である。1991年にソースコードが公開された時点では商用利用禁止ライセンスが適用された少数のC言語で書かれたファイルであったものが、2018年に公開されたバージョン4.15では、GNU General Public License v2が適用されたソースコードがコメント行を除いて2億3,300万行以上にまで増加したpage=7}}。

1. 製作までの経緯
----------

AT&TがMulticsプロジェクトを放棄したのち、Unixオペレーティングシステムが1969年にケン・トンプソンとデニス・リッチーによって構想、開発され、1970年に初めてリリースされた。続いて彼らはUnixの移植性を高めるためにC言語で書き直した。入手性と移植性の高さが功を奏し、Unixは教育機関や企業に広く採用され、複製され、改変された。

1977年、カリフォルニア大学バークレー校のComputer Systems Research Group  によって、Unix 6th editionを基盤とするBerkeley Software Distribution  が開発された。BSDにはAT&Tがライセンスを保有するUnixのコードが含まれていたために、AT&Tは1990年代初期にカリフォルニア大学を提訴した。これによりBSDの開発および採用は著しく制約を受けた。

1983年、リチャード・ストールマンがフリーなUnix系OSの構築を目標とするGNUプロジェクトを創設した。GNU General Public Licenseはこのプロジェクトの一部として作成された。1990年代初期、フリーなOSを完成させるためのソフトウェアはほとんど揃っていたが、Hurdと呼ばれるGNUカーネルだけは開発者の関心を集められず、それゆえにGNUは未完成となっていた。

1985年、Intelは32ビット命令セットおよびページングによるメモリ管理機能を備えた初のx86プロセッサとなる80386をリリースした。

1986年、AT&Tベル研究所のMaurice J. Bachが『The Design of the UNIX Operating System』を出版した。主にSystem V Release 2について記述されており、Release 3やBSDの新機能にも部分的に触れられていた。

1987年、アンドリュー・タネンバウムが出版した教科書である『Operating Systems: Design and Implementation』の記述の実例として、教育機関での利用を目的とするMINIXがリリースされた。MINIXはソースコードが公開されたが、改変や再配布には制約があった。それに加え、MINIXが16ビットで設計されているため、低価格化し普及が進んでいるIntel 386アーキテクチャの32ビットの特長を活用することが困難となっていた。1990年代初期には、Intel 386搭載PCで動作する商用Unix系OSは個人で使用するにはあまりに高額であった。

これらの要因が、トーバルズにフリーなカーネルの開発を動機付ける刺激となった。彼は当時もしGNU Hurdもしくは386BSDが入手可能であればおそらく自力で開発することはなかっただろう、と後に語っている。

2. Linuxの製作
-----------

1991年、ヘルシンキ大学でコンピュータ科学を学んでいたトーバルズは後にLinuxカーネルとなるプロジェクトを開始した。彼が書いたプログラムは、自身の新しいPCと80386プロセッサの機能を活用したかったために、自身が使用していたハードウェア専用とされ、OSに依存しないものであった。開発にはMINIX上でGNU Cコンパイラが利用された。GNU Cコンパイラは現在でもLinuxをコンパイルするための最優先の選択肢となっているが、Intel Cコンパイラなど他のコンパイラでもビルド可能である。トーバルズの自著である『それがぼくには楽しかったから』によると、彼はついにOSカーネルを完成させ、1991年8月25日にUsenetのニュースグループ"comp.os.unix"にこのシステムについての告知を投稿した。

トーバルズによると、Linuxが注目され始めたのは1992年にX Window SystemがOrest Zborowskiによって移植され、最初にLinuxでGUIが利用可能になったことによるとされる。

3. 名称
-----

トーバルズは当初彼の創作をfree、freak、xを繋ぎ合わせてFreaxと呼ぼうとしていた。彼はシステムの開発中に、半年ほどファイルの保存先の名称をFreaxとしていた。既にLinuxという名称も検討していたが、当初はあまりに自己中心的ということで却下していた。開発を促進する目的で、1991年9月にFUNETのFTPサーバ  へファイルがアップロードされた。当時ヘルシンキ工科大学  に在籍していたAri LemmkeがFTPサーバのボランティア管理者を務めていたが、彼はFreaxがよい名称ではないと考えていた。そのため、彼はトーバルズに無許可でプロジェクトの名称をLinuxとした。その後、トーバルズはLinuxと呼ぶことを承諾した。

Linuxをどのように発音すべきかを明示するため、トーバルズはカーネルのソースコードに音声ガイドを添付した。

4. GNU GPLとLinux
----------------

トーバルズは、商用利用を制限する独自のライセンスのもとでLinuxを公開した。カーネルと組み合わせて使用するソフトウェアはGNUプロジェクトの一部として、フリーソフトウェアライセンスであるGNU GPLのもとで公開されていた。最初にリリースされたLinuxカーネルであるバージョン0.01にはGNUによるBashシェルのバイナリが同梱された。

"Notes for linux release 0.01" の中で、トーバルズはLinuxを動作させるために必要なGNUソフトウェアを列挙した。

1992年、彼はカーネルをGNU GPLのもとでリリースすることを提案した。最初の決定はバージョン0.12のリリースノートで告知された。1992年12月半ばに彼はGNU GPLのもとでバージョン0.99を公開した。LinuxとGNUの開発者は、機能を完備した完全にフリーなOSを構築するために、LinuxにGNUの成果物を統合させる作業を進めた。トーバルズは「LinuxにGPLを適用したのは確実に私が実行した最善のことだった」と述べている。

2000年前後、トーバルズはLinuxカーネルのライセンスから「or later条項」を削除しGPLv2のみに確定した。

2007年、数年に渡る事前の議論の結果、トーバルズおよび主要なカーネル開発者たちはLinuxカーネルにGPLv3を適用しない判断を下した。

5. GNU/Linux名称論争
----------------

当初トーバルズにより「Linux」と命名された対象はLinuxカーネルに限られていた。もっとも、このカーネルは他のソフトウェア、とくにGNUプロジェクトによるソフトウェアと組み合わせて使われることが多かった。この組み合わせは、すぐに最も一般的なGNUソフトウェアの採用例となった。

1994年6月に発行されたGNU bulletinにおいて、Linuxは「フリーUNIXクローン」と呼ばれ、Debianプロジェクトは製品の名称を「Debian GNU/Linux」と呼び始めた。1996年5月、ストールマンはEmacs 19.31を公開した際、システムの名称をLinuxからLignuxに呼び替えた。この綴りはGNUとLinuxの関連に注目させるよう目論んだものであったが、ほどなくこれに代えてGNU/Linuxと表記するようになった。

この名称には多様な反応が起こった。GNUとLinuxの組み合わせを紹介する際、GNUおよびDebianプロジェクトではGNU/Linuxの名称を使用しているが、他の多くの人々は単にLinuxの語のみを使用している。

6. 公式マスコット
----------

トーバルズは1996年にペンギンをLinuxのマスコットとすることを提案した。これは彼がオーストラリア・キャンベラの国立動物園水族館を訪れたさい、コガタペンギンに噛まれたという出来事をマスコットの選考中に話したことに基づいている。ラリー・ユーイングはこの逸話をもとに現在よく知られているマスコットの草案を作成した。Tuxの名称はTorvalds' UniXの略かつペンギンに似た色の服装であるtuxedoの略として、James Hughesによって提案された138}}。

7. 新たな開発
--------

7.1. コミュニティ
-----------

Linuxに関わる作業の大部分を占めるのがコミュニティによるものである。世界中の何千人ものプログラマがLinuxを使用し、改善提案をメンテナたちに送信している。様々な企業もカーネルの開発のみならず、Linuxとともに配布される補助的なソフトウエアの開発も支援している。2015年2月時点では、Linuxカーネル開発者の80%以上が有給雇用者であったpage=11}}。

LinuxはDebianなどの組織されたプロジェクト、およびFedoraやopenSUSEなどの密接に企業と関連するプロジェクトによってリリースされる。これらのプロジェクトのメンバーは、様々な会議や展示会で、アイディアを交換するために会合する。最大の展示会のひとつにドイツで開催されるLinuxTagがあり、毎年1万人ほどの人々がLinuxや関連するプロジェクトについて議論するために参加している。

7.2. Open Source Development LabsとLinux Foundation
--------------------------------------------------

Open Source Development Labs  は、Linuxをデータセンターや電気通信事業者で活用できるように最適化を推進することを目標とする、独立した非営利組織として2000年に設立された。これはトーバルズやアンドリュー・モートンの職場として提供された。トーバルズはLinuxカーネルの開発のためにOSDLに常勤していた。

2007年1月22日、OSDLとFree Standards Groupが合併してLinux Foundationとなり、主要な目的をLinuxをMicrosoft Windowsの競合として推奨することに絞り込んだ。2019年現在、トーバルズはフェローとしてLinux Foundationに在籍している。

7.3. 企業
-------

無償で入手可能にも関わらず、企業はLinuxから利益を上げている。これらの企業の多くは、Linux Foundationの会員でもあり、様々なアプリケーションの領域へと適応させる目的で、相当規模の資産をLinuxの発展や開発のために投資している。これにはデバイスドライバ開発者へのハードウェアの寄贈、ソフトウェア開発者たちへの現金の寄贈や、Linuxプログラマを自社で雇用することなどが含まれる。いくつかの例として、デル、IBM、ヒューレット・パッカードでは自社製サーバでのLinuxの検証、利用、販売をしており、またレッドハットやSUSEでは企業向けのLinuxディストリビューションをメンテナンスしている。Digiaも同様に、KDEの開発を可能とするQtの開発やLGPLの適用、さらにXやKDEの開発者の雇用でLinuxをサポートしている。

7.4. デスクトップ環境
-------------

KDEは最初の先進的なデスクトップ環境であった。しかしながら、これは後にプロプライエタリなライセンスが適用されたQtツールキットが採用されたことで議論となった。ライセンスへの懸念からGNOMEが開発された。両者は異なるツールキットを採用したことにより異なるプログラミング手法が取られ、さらにドイツの非営利組織であるKDE e.V.とアメリカの非営利組織であるGNOME Foundationという異なる2つのグループによって支援された。

2007年には、とあるジャーナリストによりKDEのシェアが65%に対し、GNOMEのシェアが26%と推定された。2008年1月にはKDE4がリリースされたが、バグが多く未完成な状態だったため、ある程度のユーザがGNOMEに移行する要因となった。2011年4月にはGNOME3がリリースされたが、デザイン変更が論争の的となり、トーバルズはこれを「混乱の極み」と評した。

GNOME3への不満からCinnamonが分岐し、これは主にLinux Mintの開発者であるClement LeFebvreによって開発された。Cinnamonではより伝統的なデスクトップ環境に回帰し、改善箇所はごくわずかにとどめている。

相対的に財源が豊富なディストリビューションであるUbuntuは、従来のデスクトップ環境とは根本的に異なり、そのために種々の欠点や設定機能の不備を指摘された、Unityと称するユーザインタフェースを設計した。デスクトップPCとタブレットでデスクトップ環境を統一することが開発の動機であったが、2012年11月時点ではタブレットではUnityがさほど普及していなかった。しかしながら、2013年1月にCanonicalによってスマートフォンおよびタブレット向けのUbuntu TouchおよびUnityが発表された。2017年4月、CanonicalはUbuntu CoreのようなIoTプロジェクトに集中するために、スマートフォン向けUbuntuのプロジェクトを完全に打ち切ることを決定した。2018年4月にリリースされたUbuntu 18.04より、CanonicalはUnityを廃止してGNOMEの使用を開始した。

7.5. 「Linuxは時代遅れだ」
------------------

1992年、コンピュータ科学者として、またMINIXマイクロカーネルの開発者として知られるアンドリュー・タネンバウムは、Usenetのニュースグループ"comp.os.unix"で「Linuxは時代遅れだ」と題した記事を投稿し、Linuxカーネルの構造に関する有名な論議を誘発することとなった。主な論点は以下のようなものである。

カーネルがモノリシック構造のため前時代的である
Intel i386プロセッサに固有の機能を使用しており移植性が欠如している
ソースコードが特定の個人によって厳格に統率されていない
Linuxには無駄な機能が多いLinuxが数年で廃れてGNU Hurdに置き換えられるとするタネンバウムによる予言は不正確だったことが証明された。Linuxはあらゆる主要なプラットフォームに移植され、オープンな開発モデルによって賞賛に値する開発ペースという結果をもたらした。GNU Hurdは未だに実用サーバとして運用可能なレベルの安定性に届いていない 。さらに、x86プロセッサやIntel自体が後にパーソナルコンピュータやサーバで広範に普及したことにより、Intelの386プロセッサ製品群を「奇妙」と酷評した彼に先見の明がなかったことも証明された。

Kenneth Brownは未出版の書籍である『Samizdat』で、トーバルズがMINIXのソースコードを違法に盗用していると主張した。2004年5月、タネンバウムによってこの主張は否定された。

この書籍の主張や論理展開、出典には重大な疑義が持たれ、結果として書籍は出版されず、出版社の一覧からも削除された。

8. マイクロソフトとの競合と協調
-----------------

トーバルズはマイクロソフトが過去にLinuxに対して脅威を感じていたことによる影響は皆無だったと述べたが、マイクロソフトとLinuxそれぞれの陣営の間では1997年から2001年にかけて数々の敵対的なやり取りがあった。最初に明白となったのは1998年、いわゆる「ハロウィーン文書」がエリック・レイモンドによって公開された時であった。これはマイクロソフトの開発者による、フリーソフトウェアがマイクロソフトに与える脅威や、それらの認識された脅威に対抗するための戦略を並べようとした短いエッセイであった。

マイクロソフトがWindowsとLinuxを比較評価した顧客の事例研究を "Get the Facts" と称して自社のウェブサイトに掲載したことによって、競合は2004年から新しい局面に入った。この事例研究ではアンケートや調査分析、マイクロソフトの支援による調査などを基に、業務用サーバ用途での信頼性、セキュリティ、総保有コストの面で、LinuxがWindowsより劣ると主張していた。

この反応として、商用Linuxディトリビュータはそれぞれにマイクロソフトのキャンペーンに対抗するために研究、調査、証明を公表した。ノベルは2004年末から "Unbending the truth" と題するウェブ上のキャンペーンを開始し、利点の概説に加え広く喧伝されたLinux運用の法的な信頼性への懸念を払拭しようとした。ノベルは多くの点で、とくにマイクロソフトの研究を引用した。IBMも "The Linux at IBM competitive advantage" と題してマイクロソフトのキャンペーンをかわすための一連の研究を公表した。レッドハットは "Truth Happens" と呼ばれるキャンペーンを開始した。

2006年秋、ノベルとマイクロソフトはソフトウェアの相互運用性と特許保護で提携する契約を発表した。これにはノベルとマイクロソフトいずれの顧客も他社からの特許紛争による訴訟対象とならない、とする契約が含まれていた。特許保護は非商用のフリーソフトウェア開発者にも拡大された。最後の部分は「非商用」ソフトウェアの開発者に限定されているという理由で批判された。

2009年、マイクロソフトはGPLv2のもとで22,000行のソースコードをLinuxカーネルに寄贈し、これらは追って受理された。このことは「歴史的な動き」として、またLinuxやオープンソースソフトウェアへのマイクロソフトの企業としての態度が改善された契機として言及されたが、これはマイクロソフトに顕著な優位性をもたらすことを約束し、またマイクロソフトへの法的措置を回避するという意味で、全く利他的な判断ではなかった。実際のところマイクロソフトはコードの寄贈を余儀なくされており、これはVyattaの主席エンジニアでLinuxコントリビュータでもあるStephen Hemmingerによって、Hyper-Vネットワークドライバのソース非公開バイナリに、GPLのもとでソースコードが公開されているコンポーネントをGPLに違反して静的リンクしていたことを指摘されたためであった。マイクロソフトはライセンス違反を解消するために、法的措置を回避するという名目ではなく、慈善的な行為という建前でドライバを寄贈した。かつてマイクロソフトはLinuxを「ガン」や「コミュニスト」になぞらえていた。

2011年、マイクロソフトはLinuxカーネルのコントリビュータで第17位となった。2015年2月、マイクロソフトはコントリビュータ企業の第30位までに入らなかった10–12}}。

Windows Azureプロジェクトが2008年に発表され、後にMicrosoft Azureに改称された。Linuxはサーバベースソフトウェアの一部として統合された。2018年8月、SUSEはMicrosoft Azureプロジェクトのもとでクラウドコンピューティング用アプリケーションのための特殊仕様となるLinuxカーネルを製作した。マイクロソフトの代表者は、移植版カーネルについて「新しいAzure向けカーネルにより、顧客がSR-IOVにより高速化されたネットワークのような、新しいAzureのサービスの利点を迅速に享受できる」と述べた。

9. SCO
------

2003年3月、SCOグループがUnixからLinuxへ移されたコードによるUnixの著作権侵害でIBMを告発した。SCOはUnixの著作権保有を主張し、IBMを提訴した。Red Hatは反訴し、SCOは他の関連する訴訟を起こした。これらの訴訟と並行して、SCOは潜在的な訴訟リスクを抱えることを望まないユーザにLinuxのライセンスを販売開始した。ノベルもUnixの著作権保有を主張し、SCOを提訴した。

SCOはこれにより破産を申請した。

10. 商標権
-------

1994年と1995年に、別々の国の何人かの人々が「Linux」を商標登録しようと試みた。そしてすぐにいくつかのLinux関連企業が使用料の支払いを請求され、これは多くのLinuxの開発者やユーザが同意できない措置であった。トーバルズはこれらの企業をLinux Internationalの支援により抑え込み、Linux Internationalへと移動させた商標の使用を承諾した。その後、商標保護を専業とする非営利組織のLinux Mark Instituteによって商標が管理されることとなった。

2000年、トーバルズはライセンスの供与に関する基本的なルールを決定した。すなわち、Linuxの名称を含む製品やサービスを提供する全ての人々には、1回ごとの購入によって得られるライセンスの保有が必須となった。

2005年、Linuxの商標使用により発生する使用料の用途について新しく議論が発生した。トーバルズの権利の代理者であるLinux Mark Instituteは、金額を500米ドルから5,000米ドルに値上げすることを公表した。これは商法保護にかかるコストの上昇を埋め合わせるために必要だったと弁明された。

値上げに対する反響としてコミュニティの不快感が増大してきたことに対応し、トーバルズは誤解を解消するための告知を2005年8月21日に公開した。彼はEメールの文中で現状や背景について詳しく解説し、さらに誰がライセンスのコストを負担すべきかについて採り上げた。

その後、Linux Mark Instituteは無期限で全世界に適用される無償のサブライセンスの提供を開始した。

11. 年表
------

1991年: 21歳のフィンランド人学生だったリーナス・トーバルズにより、Linuxカーネルが8月25日に公式に発表された。
1992年: LinuxカーネルのライセンスがGNU GPLに変更された。最初のLinuxディストリビューションが製作された。
1993年: Linuxカーネルに関わる開発者が100人を越えた。彼らの支援によりカーネルがGNU環境に適応され、それによってLinuxにおけるアプリケーションの種類が広範囲なものとなった。現存する最古のLinuxディスリビューションであるSlackwareが初めてリリースされた。同年にやや遅れて、Debianプロジェクトが創設された。現在ではコミュニティによるディストリビューションとしてはDebianが最大となっている。
1994年: トーバルズはカーネルの全てのコンポーネントが十分に成熟したと判断し、バージョン1.0としてリリースした。XFree86プロジェクトがグラフィカルユーザインタフェース  を寄贈した。商用LinuxディストリビュータであるRed HatとSUSEがそれぞれのディストリビューションのバージョン1.0を公開した。
1995年: LinuxがDEC AlphaとSun SPARCに移植された。その後数年に渡り、様々な種類のプラットフォームにLinuxが移植された。
1996年: Linuxカーネルのバージョン2.0がリリースされた。対称型マルチプロセッシング  がこのバージョンからサポートされ、これによって多くの企業で現実的な採用候補となった。
1998年: IBM、コンパック、オラクルなどの主要な企業がLinuxをサポートすると発表した。「伽藍とバザール」が最初にエッセイとして公表された。これを受けネットスケープがNetscape Communicatorウェブブラウザのソースコードを一般に公開した。ネットスケープの動きと「伽藍とバザール」への評価により、Linuxのオープンソース開発モデルが著名な技術メディアの関心を引くこととなった。プログラマのグループによってKDEの開発が開始された。
1999年: KDEが後にプロプライエタリとなるQtツールキットに依存していたことから、これを懸念したグループによって、代替となるフリーなデスクトップ環境を目指したGNOMEの開発が開始された。IBMがLinuxをサポートするための広範囲に及ぶプロジェクトを発表した。
2000年: Dellが現在Linuxベースのシステムを提供する世界第2位の企業であり、また主要な企業では初となる、Linuxを全ての製品ラインナップで提供するメーカーであると公表した。
2002年: 「MicrosoftがDellのLinuxを殺した」とメディアが報道した。
2004年: XFree86チームが分裂し、既存のX standards bodyに一部メンバーが合流してX.Org Foundationを設立した。これにより、LinuxのXサーバの開発が本質的に加速することとなった。
2005年: openSUSEプロジェクトがNovellコミュニティによる無償ディストリビューションとなった。OpenOffice.orgがバージョン2.0をリリースし、その後OASIS OpenDocument標準規格のサポートを開始した。
2006年: OracleがRed Hat Enterprise Linuxの自社仕様をリリースした。Novellとマイクロソフトが相互運用性と特許保護の改善のために提携すると発表した。
2007年: DellがUbuntuをあらかじめインストールしたラップトップPCを発売した。
2009年: Red Hatの時価総額がSunと並び、「Linuxに基づく経済」の象徴的な瞬間と解釈された。
2011年: Linuxカーネルのバージョン3.0がリリースされた。
2012年: Lunuxがサーバ市場で他のUnixの合計を越えるシェアを獲得した。
2013年: GoogleによるLinuxベースのAndroidのスマートフォン市場でのシェアが出荷数ベースで75%と公表された。
2014年: Ubuntuのユーザ数が2,200万と公表された。
2015年: Linuxカーネルのバージョン4.0がリリースされた。

12. 脚注
------

13. 関連項目
--------

オープンソースソフトウェアの歴史
オペレーティングシステムの歴史

14. 外部リンク
---------

[1]
[2]
[3]