「オープンソースソフトウェアの歴史」の版間の差分

削除された内容 追加された内容
Cewbot (会話 | 投稿記録)
m bot: 解消済み仮リンクGM-NAA I/OSHARE OSを内部リンクに置き換えます
編集の要約なし
5行目:
| caption1 = 1990年頃の[[コンソール|ターミナル]]
| image2 = Twm.png
| caption2 = 2000年頃の[[ウィンドウマネージャ]]
| image3 = Ubuntu 15.10 with Firefox and Nautilus open.png
| caption3 = 2010年頃の[[デスクトップ環境]]
13行目:
'''オープンソースソフトウェアの歴史'''では、オープンソースソフトウェアの[[歴史]]を、その背景・文化・運動・方法論・技術・影響などを踏まえつつ多面的に解説する。
 
[[オープンソースソフトウェア]](OSS) (OSS) とは、 そのソフトウェアのユーザーによって、人間が判読できる[[ソースコード]]を使用、調査、再利用、修正、拡張、再配布することができる[[ソフトウエア]]である<ref name="dod-oss-definition">{{citeweb|author=United States Department of Defense|date=2009-10-16|url=http://dodcio.defense.gov/Open-Source-Software-FAQ/#Defining_Open_Source_Software_.28OSS.29|title=Defining Open Source Software (OSS)|quote=defines OSS as "software for which the human-readable source code is available for use, study, re-use, modification, enhancement, and re-distribution by the users of that software"|accessdate=2018-02-09}}</ref>。ソフトウェアのソースコードを利用者が共有し、修正、再頒布する文化は、1950年代の[[コンピュータ]]上でソフトウェアが稼働するようになった頃から学術機関、研究機関の間で存在し、ソースコードとソフトウェアは[[パブリックドメイン]]で共有されていた。1970年代以降、ソフトウェア開発は徐々に商業となり、ソフトウェアの頒布に制約を付与する[[プロプライエタリ・ソフトウェア]]、ソースコードを非公開とする[[クローズドソース]]の文化ができあがった。1980年代以降、利用者がソフトウェアのソースコードを自由に利用できないことをストレスに感じた人たちは、[[フリーソフトウェアの定義|フリーソフトウェア]]や[[オープンソースの定義|オープンソース]]を定義して、ソースコードを利用者で共有することによるソフトウェアの発展を提唱した。2000年代前後のソースコードの共有文化が再度一般化した頃、オープンソースソフトウェアコミュニティ内での議論や、プロプライエタリ・ソフトウェアを販売する企業から攻撃など、論争が活発となった。
 
== コンピュータ以前の技術共有 ==
19行目:
 
== マシンバンドルのソフトウェア ==
[[1950年代]]のコンピュータは[[ハードウェア]]とソフトウェアがバンドルされた大型のマシンであり、マシンベンダーは同ハードウェアで動作するソフトウェアを開発し、マシンとソースコードを利用者に提供していた。利用者は提供されたソースコードを修正して独自のソフトウェアを開発し、[[パブリックドメイン]]として共有していた<ref name="freedom" />。[[1960年代]]から[[1970年代]]にかけて、ソフトウェアの開発コストは肥大化し、マシンベンダーとは独立したソフトウェアベンダーによるソフトウェア開発と[[プロプライエタリ・ソフトウェア]]の文化ができていった<ref name="landley2009" />。
 
=== 研究機関内でのコード共有 ===
1950年代から1960年代のコンピュータでは、ハードウェア上で動作する[[オペレーティングシステム]] (OS) とソフトウェアはソースコードと[[実行ファイル]]をマシンに同梱する形で利用者に提供されていた。ソフトウェアは大学や研究所の研究者により開発され、[[パブリックドメイン]]として扱われていた。コンピュータは大学や研究機関が主な利用者であり、ソフトウェアはソースコードは一般に学術分野で長く確立された公開性と協力の原則の下で配布され、それ自体は商品として見られなかった。そのような組織での活動は、オープンソースソフトウェア分野で肯定的な意味で使われる[[ハッカー文化]]と呼ばれる、開発の中心的な要素であった。この頃のソフトウェアは特定のハードウェアでしか動作させることはできなかったため、他者のハードウェアで実装されたものを自分のハードウェアで動かしたり、ソフトウェアのバグの修正や新しい機能の追加するために、人にとって可読性のある[[ソースコード]]はマシンで実行する[[マシンコード機械語]]と共に頒布されていた<ref name=":0">{{Cite journal|last=Hippel|first=Eric von|last2=Krogh|first2=Georg von|date=2003-04-01|title=Open Source Software and the “Private-Collective” Innovation Model: Issues for Organization Science|url=http://pubsonline.informs.org/doi/abs/10.1287/orsc.14.2.209.14992|journal=Organization Science|volume=14|issue=2|pages=209–223|doi=10.1287/orsc.14.2.209.14992|issn=1047-7039}}</ref><ref>{{cite web|url=http://www.cozx.com/~dpitts/ibm7090.html |title=IBM 7090/7094 Page |publisher= |accessdate=11 August 2015 |deadurl=yes |archiveurl=https://web.archive.org/web/20150827134534/http://www.cozx.com/~dpitts/ibm7090.html |archivedate=27 August 2015 |df=dmy-all }}</ref>。
 
[[画像:UNIVAC 1 demo.jpg|thumb|right|[[A-0 System]]が動作する[[UNIVAC]]の商用コンピュータ]]
オープンソースソフトウェアの最初の事例は、1953年にレミントンランドの[[UNIVAC]]部門で開発され、ソースコードと共に利用者にリリースされた[[A-0 System]]と考えられている<ref>{{cite book |last=Ceruzzi |first=Paul |title=A History of Modern Computing |publisher=The MIT Press |year=1998}}</ref>。利用者は修正や改善をUNIVACへフィードバックするよう求められた<ref>{{cite web |title=Heresy & Heretical Open Source: A Heretic's Perspective |url=http://www.infoq.com/presentations/Heretical-Open-Source|accessdate=2018-03-10}}</ref>。その後、大半の[[IBM]]の[[メインフレーム]]がソースコードと共に共有された。{{仮リンク|SHARE|en|SHARE (computing)}}と呼ばれた[[IBM 701]]のユーザーグループ、{{仮リンク|DECUS|en|DECUS}}と呼ばれた[[Digital Equipment Corporationディジタル・イクイップメント・コーポレーション|DEC]]のユーザーグループは、ソフトウェアの共有体系を構築した。[[ゼネラルモーターズ]]がオリジナルを開発した[[GM-NAA I/O]]は、SHAREユーザーグループによって[[SHARE Operating System|SHARE OS]]として[[IBM 709]]、[[IBM 7090]]へ移植された。
 
幾つかの大学のコンピュータ関係の研究室はコンピュータにインストールする全ての[[プログラム (コンピュータ)|プログラム]]のソースコードの[[ファイル (コンピュータ)|ファイル]]を公開しなければならないポリシーを定めていた<ref name="freedom">{{citeweb|author=Sam Williams|title=Free as in Freedom: Richard Stallman's Crusade for Free Software|url=http://www.oreilly.com/openbook/freedom/ch01.html|accessdate=2018-03-10}}</ref>。1969年、[[ARPANET]]が構築され、このネットワークはソースコードの交換を簡略化した。1970年代にソースコードの公開と共に開発された[[Tex]]<ref>{{Cite journal|last=Gaudeul|first=Alexia|date=2007|title=Do Open Source Developers Respond to Competition? The LATEX Case Study|url=https://www.degruyter.com/view/j/rne.2007.6.issue-2/rne.2007.6.2.1119/rne.2007.6.2.1119.xml|journal=Review of Network Economics|language=en|volume=6|issue=2|pages=|doi=10.2202/1446-9022.1119|issn=1446-9022|via=}}</ref>や[[SPICE (ソフトウェア)|SPICE]]<ref>{{cite web |url= http://www.ecircuitcenter.com/SpiceTopics/History.htm |title= A brief history of spice|accessdate=2018-03-15}}</ref>は2000年代まで長く使われ続けた。
 
=== マシンバンドルからの分離と商業化 ===
[[File:Ken Thompson (sitting) and Dennis Ritchie at PDP-11 (2876612463).jpg|thumb|DECの[[PDP-11]]、標準OSはDEC製OSだが多くの他社製OSが利用された]]
1960年代より変化が訪れ、オペレーティングシステムOS[[プログラミング言語]][[コンパイラ]]を始めとしたソフトウェアの開発コストはハードウェアに比べて劇的に増加した。ハードウェアにバンドルするソフトウェアのコストはハードウェアコストに含まれていたため、ソフトウェア業界の成長はハードウェアベンダーの製品と競合した。ハードウェアベンダーはソフトウェアの利益はないもののリースしたハードウェアにバンドルしたソフトウェアのサポートをするためソフトウェア製品のコストをハードウェア製品のコストに上乗せする必要があり、一方で自らのニーズに併せてソフトウェアを改善することができる顧客にとってはハードウェアベンダーのソフトウェア製品のコストをハードウェア製品のコストと一緒に束ねることは望んでいなかった<ref>{{cite book |last= Fisher| first= Franklin M. |author2=McKie, James W. |author3=Mancke, Richard B. |title =IBM and the U.S. Data Processing Industry: An Economic History |publisher= Praeger |year =1983 |isbn =0-03-063059-2}}page 176</ref>。例えば、DECの[[PDP-11]]は標準のオペレーティングシステムOSはDEC製の{{仮リンク|DEC BATCH-11/DOS-11|en|BATCH-11/DOS-11}}や[[RT-11]]であったが、マシンの利用者は自身の利用用途に併せてソビエト連邦製{{仮リンク|ANDOS|en|ANDOS}}、[[AT&T]]製[[UnixUNIX]]など他社製オペレーティングシステムOSを利用した。1969年1月17日に提出された米国政府とIBMの独占禁止法訴訟では、米国政府はバンドルされたソフトウェアが反競争的であると訴えた<ref>{{cite book|last=Fisher |title= op.cit.}}</ref>。
 
需要に併せてハードウェアにバンドルするソフトウェアは減り、一部のソフトウェアは引き続き無償でバンドル提供されていたが、制限付きライセンスでのみで提供、販売されるソフトウェアが増えていった。1970年代序盤、[[AT&T]]は[[UnixUNIX]]の早期バージョンを開発し、行政機関と学術機関に無償で提供した<ref name="Ritchie">{{cite journal | last = Ritchie | first = D.M. | authorlink = |author2=Thompson, K. | title = The UNIX Time-Sharing System | journal = Bell System Tech. J. | volume = 57 | issue = 6 | pages = 1905–1929 | publisher = American Tel. & Tel. | location = USA | date = July 1978 | url = https://archive.org/details/bstj57-6-1905 | accessdate = December 9, 2012 | doi = 10.1002/j.1538-7305.1978.tb02136.x}}</ref>。しかし、そのバージョンは再頒布や修正コードの頒布を認めておらず、オープンソースソフトウェアと呼ばれる条件を満たす物ではなかった。1979年、AT&Tは企業がUnixUNIXシステムを利用してビジネスをする場合はUnixUNIXの利用に有償ライセンスを課すことを決定し、システムパッチを有償ライセンスで販売するようになった。広い普及によりアーキテクチャを切り替えることは難しく、多くの学術機関の利用者はUnixUNIX有償ライセンスを購入して利用を続けた。
 
1970年代以前のソフトウェアはパブリックドメインで共有されていたが、この頃より[[クローズドソース]]、[[プロプライエタリ・ソフトウェア]]が登場した。1974年に{{仮リンク|Commission on New Technological Uses of Copyrighted Works|en|CONTU|label=CONTU}}は「コンピュータプログラムは、著作者の制作を具体化する範囲で、著作権の適切な主題である」と言及した<ref>[http://digitalcommons.law.ggu.edu/cgi/viewcontent.cgi?article=1344&context=ggulrev Apple Computer, Inc. v. Franklin Computer Corporation Puts the Byte Back into Copyright Protection for Computer Programs] in Golden Gate University Law Review Volume 14, Issue 2, Article 3 by Jan L. Nussbaum (January 1984)</ref><ref name="sail_book">Lemley, Menell, Merges and Samuelson. ''Software and Internet Law'', p. 34.</ref>。加えて、1983年にCONTUは[[オブジェクトファイル]]に関する{{仮リンク|Apple-Franklin訴訟|en|Apple Computer, Inc. v. Franklin Computer Corp.}}で「コンピュータプログラムは文学作品としての著作権を持ち、ソースコードを非公開とするクローズドソースのソフトウェアのビジネスモデルは有効である」と述べている<ref name="landley2009">{{cite web|url=http://landley.net/notes-2009.html |first=Rob |last=Landley |publisher=landley.net |accessdate=2015-12-02 |date=2009-05-23 |quote=''So if open source used to be the norm back in the 1960's and 70's, how did this _change_? Where did [[proprietary software]] come from, and when, and how? How did Richard Stallman's little utopia at the MIT AI lab crumble and force him out into the wilderness to try to rebuild it? Two things changed in the early 80's: the exponentially growing installed base of microcomputer hardware reached critical mass around 1980, and a legal decision altered copyright law to cover binaries in 1983.'' |title=notes-2009}}</ref>。
 
1970年代末から1980年代初頭、コンピュータベンダーとソフトウェアベンダーはプログラム製品としてソフトウェアのビジネスモデルを構築し、ソフトウェアを商用製品として販売していった。[[ビル・ゲイツ]]は1976年に[[Open Letter to Hobbyists]]というエッセイで[[マイクロソフト]]の製品である[[Microsoft BASIC|Altair BAISC]]が愛好者の間でライセンス費を支払うこのとなく広く共有されていることを残念に思っていると述べた。IBMは1983年2月8日付の発表レターで、購入したソフトウェアのソースコードを配布しない、今で言う[[クローズドソース]]、という方針を打ち出した。コストの増加に伴い、一般傾向は[[プログラマ]]が可読なソースコードは頒布せず、ソースコードをコンパイルして作られる実行形式のマシンコード機械語だけを頒布する[[プロプライエタリ・ソフトウェア]]となっていった。
 
== 日常的に続いたハッキング ==
1980年代から1990年代、ソフトウェアは商業化し、クローズドソースであることが多かったが、後に「ホビイスト({{lang-en-short|hobbyist}})」や「ハッカー({{lang-en-short|hacker}})」と呼ばれる、ソースコードを他のプログラマやユーザーと無料で共有しようとしていた人たちがいた<ref name="infoworld1983">{{cite web|url=https://books.google.de/books?id=yy8EAAAAMBAJ&lpg=PA31&ots=IdSaFSmKVK&dq=us%20government%20public%20domain%20software&hl=de&pg=PA31#v=onepage&q=us%20government%20public%20domain%20software&f=false |work=InfoWorld |date=1983-06-23|title=Free software - Free software is a junkyard of software spare parts |first=Tom |last=Shea
|accessdate=2016-02-10}}</ref>。彼らは書籍や独自のネットワークを通してソフトウェアのソースコードを共有して、他者の書いたソースコードを入手し、学習、利用した。
 
=== 書籍を通したコード共有 ===
[[インターネット]]が一般的に使われるようになる以前、1980年代以降に出版されていた{{仮リンク|Creative Computing (magazine)|en|Creative Computing|label=Creative Computing}}、{{仮リンク|SoftSide|en|SoftSide}}、{{仮リンク|Compute!|en|Compute!}}、[[バイト (雑誌)|Byte]]などのコンピュータ雑誌<ref name=ccomputing>{{cite web|url=http://onlinebooks.library.upenn.edu/webbin/serial?id=ccomputing|work=The Online Books Page: Serial Archive Listings|title=Creative Computing|publisher=University of Pennsylvania|location=USA|accessdate=12 May 2014}}</ref><ref>{{citeweb|url=http://apple2history.org/history/ah20.html| author=Steven Weyhrich| date=1994-02-10| title=Magazines| quote=SoftSide was a magazine about software, begun in October 1978 by Roger Robitaille.|archiveurl=https://web.archive.org/web/20010724053858/http://apple2history.org/history/ah20.html|archivedate=2001-06-21|accessdate=2018-03-15}}</ref><ref>{{cite book|author=Roberto Dillon|title=Ready: A Commodore 64 Retrospective|url=https://books.google.com/books?id=ecuoBQAAQBAJ&pg=PA113|accessdate=12 February 2017|date=3 December 2014|publisher=Springer|isbn=978-981-287-341-5|page=113}}</ref><ref name = "New Scientist 1977">{{Cite magazine | last = Valery | first = Nicholas | title = Spare a byte for the family |magazine= [[New Scientist]] | volume = 74 | issue = 1052 | pages =405–406 | publisher = Reed Business Information | location = London | date = May 19, 1977 | url = https://books.google.com/books?id=Rt5VRWY4aR8C&pg=PA405 | issn = 0262-4079}} "''Byte'' magazine, the leading publication serving the homebrew market ..."</ref>、ベストセラーの{{仮リンク|BASIC Computer Games|en|BASIC Computer Games}}に代表されるコンピュータプログラミング本はソフトウェアのソースコードを掲載し、共有利用されていた<ref>{{cite web |url = http://www.swapmeetdave.com/Ahl/DHAbio.htm |title = David H. Ahl biography from Who's Who in America |first = David |last = Ahl|accessdate = 2009-11-23}}</ref>。しかしながら、それらは依然としてコピーライトであり、[[Atari 8ビット・コンピュータ]]のシステムソフトウェアの主要なコンポーネントは注釈付きのソースコードでマスマーケット本に掲載された。例えば、{{仮リンク|Atari BASIC|en|Atari BASIC}}のソースコードの一部は『''The Atari BASIC Source Book''』に<ref>{{cite web|last1=Wilkinson|first1=Bill|title=The Atari BASIC Source Book|url=https://archive.org/details/ataribooks-the-atari-basic-source-book|publisher=COMPUTE! Books|date=1983|accessdate=2018-03-15}}</ref>、{{仮リンク|Atari DOS|en|Atari DOS}}のソースコードの一部は『''Inside Atari DOS''』に掲載されていた<ref>{{cite web|last1=Wilkinson|first1=Bill|title=Inside Atari DOS|url=http://atariarchives.org/iad/|publisher=COMPUTE! Books|date=1982|accessdate=2018-03-15}}</ref>。
 
=== オンラインの共有コミュニティ ===
1980年代、ソースコードを伴うソフトウェアは[[電子掲示板|BBS]]ネットワークで共有されていた。これは時には必要なもので、[[BASIC]]やその他の一部の[[インタプリタ]]言語はソースコードのみで頒布が可能であり、多くのものが[[フリーウェア]]だったからである。利用者がソースコードを収集し、その修正について議論の場を設けようとした場合、BBSは[[デファクトスタンダード]]なオープンシステムであった。
 
この分野で最も分かりやすく、最も多く利用されたBBSネットワークの一つに{{仮リンク|ウェイン・ベル|en|Wayne Bell}}がBASICで最初に開発した{{仮リンク|WWIV|en|WWIV}}がある<ref>{{citeweb|url=http://software.bbsdocumentary.com/IBM/DOS/WWIV/feren.txt|title=Correction for "overview of BBS programs."|date=2001-12-28|author=Feren|accessdate=2018-03-15}}</ref>。彼のソフトウェアを{{仮リンク|モディング|en|Modding}}({{lang-en-short|modding}})し、[[Mod (コンピュータゲーム)|モッド]]({{lang-en-short|Mod}})を頒布する文化は<ref>{{citeweb|url=http://software.bbsdocumentary.com/IBM/DOS/AXIS/|title=IBM and Compatibles: DOS: AXIS - The BBS Software Directory|date=1995-11-24|author=Zip Code of Z-TEC|quote=source there were a few bbs's that wouldn't reveal their secrets on how they did their mods. So I would spend a lot of time on other boards learning what their mod did and duplicating it.|accessdate=2018-03-15}}</ref>、そのソフトウェアを最初に[[Pascal]]、続いて[[C++]]に移植し、そのソースコードは登録ユーザーに共有され、ユーザーはモッドを共有し独自バージョンのソフトウェアをコンパイルする際に使われ、{{仮リンク|WWIV|en|WWIV}}自身を大きく成長させた<ref>{{citeweb|url=http://www.textfiles.com/bbs/WWIVNEWS/wwiv9101.txt|title=WWIVNEWS Volume 1, Issue 1|date=1991-01|author=Wayne Bell|accessdate=2018-03-15}}</ref>。
54行目:
 
=== SHAREプログラムライブラリ ===
1955年に設立した{{仮リンク|SHARE|en|SHARE (computing)}}ユーザーグループは自由に利用できるソフトウェアを収集し、頒布していた<ref>{{citeweb|url=http://www.piercefuller.com/library/share.html|title=IBM SHARE Library| date=2003-06-27|publisher=Computer Collection Library|accessdate=2018-03-15}}</ref>。SHAREの最も古いドキュメント頒布物は1955年10月17日に遡り、『''SHARE Program Library Agency''』で磁気テープの情報とソフトウェアがまとめられていた<ref>{{cite web|last1=Norman|first1=Jeremy|title=SHARE, The First Computer Users' Group, is Founded (1955)|url=http://www.historyofinformation.com/expanded.php?id=4805|website=HistofyofInformation.com|accessdate=24 March 2017}}</ref>。IBMがメインフレームのオペレーティングシステムOSのソースコードとしてリリースしたものを<ref>{{cite web |url=http://www.princeton.edu/~melinda/25paper.pdf |archiveurl=https://web.archive.org/web/20060513145315/http://www.princeton.edu/~melinda/25paper.pdf |archivedate=May 13, 2006 |title=VM and the VM Community: Past, Present, and Future |first=Melinda |last=Varian |publisher=Princeton University |date=August 1997|page=54| accessdate=2019-03-10}}</ref><ref>{{cite web |url=http://www2.marist.edu/~vmshare/browse?fn=OCO:BDAY&ft=MEMO&args=KEYS#hit |title=MEMO OCO:BDAY - Today is OCO's tenth birthday |date=February 8, 1993| accessdate=2019-03-10}}
</ref><ref>
[http://www.cozx.com/~dpitts/ibm7090.html Dave Pitts' IBM 7090/7094 Page] {{webarchive|url=https://web.archive.org/web/20150827134534/http://www.cozx.com/~dpitts/ibm7090.html |date=2015-08-27 | accessdate=2019-03-10|quote=An example of distributed source: Page contains a link to IBM 7090/94 IBSYS source, including COBOL and FORTRAN compilers.}}</ref>、SHAREユーザーグループは小さなローカルの機能追加、修正をし、他の利用者と共有した。SHAREプログラムライブラリとそれが育んだ分散開発のプロセスは、オープンソースソフトウェアの主要な起源の1つとなった<ref>{{cite web |url=http://www.soa-pipeline.com/news/169400167 |archiveurl=https://web.archive.org/web/20060324140930/http://www.soa-pipeline.com/news/169400167 |archivedate=March 24, 2006 |title=SHARE, IBM User Group, To Celebrate 50th Anniversary |first=David |last=Gardner |publisher=TechWeb News |date=August 17, 2005| accessdate=2019-03-10}}</ref>。
 
=== DECUS tapes ===
1980年代初頭、「DECUS tapes」と呼ばれた{{仮リンク|DECUS|en|DECUS}}によるDEC製品利用者のために自由に利用できるソフトウェアを共有する世界的なシステムが存在した<ref>{{cite web |url= http://www.ibiblio.org/pub/academic/computer-science/history/pdp-11/rsx/decus/| title= The DECUS tapes|accessdate=2018-03-15}}</ref>。DECUS tapesはソフトウェアの学習、修正を望む利用者が求めるソースコードを頒布した。DEC製のオペレーティングシステムOSは一般にプロプライエタリ・ソフトウェアだったが、[[Text Editor and Corrector|TECO]]エディタ、{{仮リンク|runoff|en|runoff (program)}}テキストフォーマッタ、ファイルリストツールなどの利用者の利便性を上げるユーティリティツールはDECUS tapesで頒布されていた<ref>{{citeweb|url=https://www.ibiblio.org/pub/academic/computer-science/history/pdp-11/decus/index.html|title=PDP-11 DECUS Software Index|date=1999-05-28|author=Tim Shoppa|accessdate=2018-03-15}}</ref>。それらのユーティリティパッケージはDECにも貢献しており、時には彼らの商用のオペレーティングシステムOSの新しいリリースに投入された。DECUS tapesではコンパイラでさえ頒布され、例えば[[Ratfor]]や{{仮リンク|Ratfiv|en|Ratfiv}}は研究者たちが[[Fortran]]コードを[[goto文]]を抑制する[[構造化プログラミング]]へ移行する手助けをした。1981年、DECUS tapesは、DECの[[OpenVMS|VMS]]オペレーティングシステム OSが動作する[[16ビット]]マシンの[[PDP-11]]シリーズ、[[32ビット]]マシンの[[VAX]]シリーズに、[[ローレンス・バークレー国立研究所]]のSoftware Tools Virtual Operating Systemを移植したことで革新的な存在となった。それはWindows上の[[cygwinCygwin]]に似ており、UnixUNIXに互換性のある環境を提供した。
 
== フリーソフトウェアの提唱 ==
68行目:
リチャード・ストールマンは1980年代中頃にフリーソフトウェアを広く展開させるためコピーライト(著作権)の対象となる著作物の自由な状態を維持するための法的な仕組みとなる「[[コピーレフト]]」の概念を発案した<ref name="autogenerated1" />。コピーレフトは利用者に、追加費用なく利用する権利、プログラムの完全なソースコードを入手する権利、ソースコードを学習、修正する権利などの多くの権利を与え、同時に成果物に同一の条件および追加の制限を加えない義務を要求した<ref name="gnu-copyleft">{{citeweb|author=Free Software Foundation|url=https://www.gnu.org/copyleft/copyleft.html|title=What is Copyleft?|date=2018-01-01|accessdate=2018-02-09}}</ref>。成果物は他のプログラムの混合で構成されるため、下流の利用者は自身の成果物を独自の制約を加えたソフトウェア([[プロプライエタリ・ソフトウェア]])に変えることはできず、コピーレフトの[[コモンズ]]([[ローカル・コモンズ]])に貢献するよう呼びかけられた。
 
コピーレフト(copyleft) (copyleft) という単語はコピーライト(copyright) (copyright) の対義語として1970年代後半には存在していた<ref>{{Cite journal|last=Wang |first=Li-Chen|title=Palo Alto Tiny BASIC |journal=[[Dr. Dobb's Journal|Dr. Dobb's Journal of Computer Calisthenics & Orthodontia, Running Light Without Overbyte]] |volume=1 |issue=5 |pages=12–25 |date=May 1976}} (NB. Source code begins with the following six lines. "TINY BASIC FOR INTEL 8080; VERSION 1.0; BY LI-CHEN WANG; 10 JUNE, 1976; @COPYLEFT; ALL WRONGS RESERVED". The June date in the May issue is correct. The magazine was behind schedule, the June and July issues were combined to catch up.)</ref><ref>{{Cite journal|last=Rauskolb |first=Roger |title=Dr. Wang's Palo Alto Tiny BASIC |journal=Interface Age |volume=2 |issue=1 |pages=92–108 |date=December 1976}} (NB. The source code begins with the following nine lines: "<tt>TINY BASIC FOR INTEL 8080; VERSION 2.0; BY LI-CHEN WANG; MODIFIED AND TRANSLATED TO INTEL MNEMONICS; BY ROGER RAUSKOLB; 10 OCTOBER, 1976 ; @COPYLEFT; ALL WRONGS RESERVED</tt>")</ref>。リチャード・ストールマンがコピーレフトという語を気に入ったのは、1984年に{{仮リンク|ドン・ホプキンス|en|Don Hopkins}}がリチャード・ストールマンに宛てて送った「{{lang|en|Copyleft &mdash; all rights reversed}}」(コピーレフト―全ての権利は逆さにされている)というフレーズに由来する<ref name="autogenerated1">{{cite web|url=https://www.gnu.org/gnu/thegnuproject.html |title=About the GNU Project |publisher=[[Free Software Foundation]] |first=Richard |last=Stallman |authorlink=リチャード・ストールマン |date=21 January 2008 |accessdate=23 August 2008| quote=In 1984 or 1985, Don Hopkins (a very imaginative fellow) mailed me a letter. On the envelope he had written several amusing sayings, including this one: “Copyleft—all rights reversed.” I used the word “copyleft” to name the distribution concept I was developing at the time.}}</ref>。この後、リチャード・ストールマンはコピーレフトという概念の発案と定義まで少々の時間をかけた。
 
=== GNUプロジェクトの開始 ===
1982年にリチャード・ストールマンはフリーソフトウェアのみで構成された完全なオペレーティングシステムOSを実装する「[[GNUプロジェクト]]」を開始した<ref>{{cite web|url=https://groups.google.com/forum/#!msg/net.unix-wizards/8twfRPM79u0/1xlglzrWrU0J|title=new Unix implementation|author=Richard Stallman|accessdate=2016-01-14}}</ref>。GNUプロジェクトは[[Emacs]]、[[デバッガ]]、[[yaccYacc]]互換[[構文解析器|パーサー]]、[[リンケージエディタ|リンカー]]の実装から始まり<ref>{{Cite book |last=Wardrip-Fruin |first=Noah |author= |authorlink= |coauthors=Nick Montfort |year=2003 |title=The NewMediaReader |location= |publisher=The MIT Press |language= |page=545-550 |id= |isbn=978-0262232272 |quote= }}</ref>、多くのUNIXユーティリティソフトウェアを実装した<ref>{{cite web | url = https://www.gnu.org/bulletins/bull3.html#SEC11 | title = GNU's Bulletin, vol. 1 no. 3 | date = June 1987 | work = gnu.org|accessdate=2018-03-15}}</ref>。GNUプロジェクトの始動させた動機に、利用者にソースコードの提供がなされなかっために問題を解決できなかった厄介な[[プリンター]]の存在があった<ref>{{cite web|url=https://www.gnu.org/events/rms-nyu-2001-transcript.txt|title=Talk transcript where Stallman tells the printer story|accessdate=2018-03-10}}</ref>。
 
1985年、GNUプロジェクトの目的の概要とフリーソフトウェアの重要性を説いた「[[GNU宣言]]」を発表した<ref>{{cite journal|url=http://www.math.utah.edu/ftp/pub/tex/bib/toc/dr-dobbs-1980.html#10(3):March:1985 |title=Dr. Dobb's Journal |volume=10 |issue=3 |pages=30 |work=Dr. Dobb's Journal |date=March 1985 |first=Richard |last=Stallman |authorlink = リチャード・ストールマン |accessdate=2011-10-18}}</ref>。GNUプロジェクトの可能性とGNU宣言は、[[シンボリックス]]社が更新したMITのソースコードをベースにした[[LISPマシン]]をMITが利用するケースにおいて、リチャード・ストールマンとシンボリックス社は合意することはできなかった<ref>{{cite web |url= https://www.gnu.org/gnu/rms-lisp.html |title= Transcript of Richard Stallman's Speech, 28 Oct 2002, at the International Lisp Conference |publisher= GNU Project |date= 28 October 2002 |accessdate= 2008-12-21}}</ref>。
78行目:
|title=GNU's Bulletin, Volume 1 Number 1, page 8|publisher=Gnu.org|accessdate=2013-10-03}}</ref>。[[1986年]]の[[フリーソフトウェアの定義]]は2つの要点からなり、フリーソフトウェアのフリー(自由)の意義と優位性についてシンプルな言葉で表した。フリーソフトウェアの定義は時代にあわせて逐次更新され、1996年に3条項からなるフリー(自由)の定義とそれを補足する文章となり<ref>{{cite web|url=http://www.gnu.org:80/philosophy/free-sw.html|title=What is Free Software?|publisher=Gnu.org|archiveurl=https://web.archive.org/web/19980126185518/http://www.gnu.org:80/philosophy/free-sw.html|archivedate=1998-01-26|accessdate=2013-10-03}}</ref>、1999年に第0条を追加した4条項となった<ref>{{cite web|url=http://www.gnu.org:80/philosophy/free-sw.html|title=What is Free Software?|publisher=Gnu.org|archiveurl=https://web.archive.org/web/19990430060825/http://www.gnu.org:80/philosophy/free-sw.html|archivedate=1999-04-30|accessdate=2013-10-03}}</ref>。
 
GNUプロジェクトのライセンスは、1988年2月11日にコピーレフトの概念が初めてライセンスとして実装された[[GNU Emacs]]のための[[Emacs General Public License]]に始まり<ref>{{citeweb|url=https://www.free-soft.org/gpl_history/emacs_gpl.html| title=GNU Emacs General Public License|publisher=free-soft.org|accessdate=2018-03-10}}</ref>、プロジェクト初期はソフトウェア個々にライセンスがリリースされていた。その後、1989年2月にコピーレフトを含め[[GNU General Public License]](GNU GPL)(GNU GPL) が汎用ライセンスとしてリリースされた<ref name="gplv1">{{cite web| url = http://www.gnu.org/licenses/old-licenses/gpl-1.0.html| title = GNU General Public License, version 1| publisher = [[フリーソフトウェア財団|Free Software Foundation]]| accessdate=2011-04-01}}</ref>。続いて、1991年にGNU General Public License バージョン2、GNU Library General Public License バージョン2がリリースされた<ref name="gplv2">{{cite web| url = https://www.gnu.org/licenses/old-licenses/gpl-2.0.html| title = GNU General Public License, version 2| publisher = [[フリーソフトウェア財団|Free Software Foundation]]| accessdate=2011-04-01}}</ref><ref name="lgplv2">{{cite web| url = https://www.gnu.org/licenses/old-licenses/lgpl-2.0.html| title = GNU Library General Public License, version 2.0| publisher = [[フリーソフトウェア財団|Free Software Foundation]]| accessdate=2011-04-01}}</ref>。同年、GNU Library General Public Licenseは位置付けを明確にするため[[GNU Lesser General Public License]](GNU LGPL)(GNU LGPL) に名称変更して微修正と共にバージョン2.1がリリースされた<ref name="lgplv21">{{cite web| url = https://www.gnu.org/licenses/old-licenses/lgpl-2.1.html| title = GNU Library General Public License, version 2.1| publisher = [[フリーソフトウェア財団|Free Software Foundation]]| accessdate=2011-04-01}}</ref>。
 
1989年、幾人かのGNUプロジェクトの開発者は[[シグナスソリューションズ]]に異動した<ref>{{cite web |url= http://www.oreilly.com/catalog/opensources/book/tiemans.html |title= Future of Cygnus Solutions, An Entrepreneur's Account |author= Michael Tiemann|accessdate=2018-03-10}}</ref>。GNUプロジェクトは、[[カーネル]]の開発は引き続き遅れていたが、1991年にカーネルを除いたほぼ全てのコンポーネントが完成し、[[Linuxカーネル]]と結合することで、ほぼ全てのソフトウェアがフリーソフトウェアでできたオペレーティングシステムOSが完成した。
 
===フリーソフトウェア財団の設立 ===
87行目:
1990年代中ほどまでのフリーソフトウェア財団はGNUプロジェクトの開発者の支援(雇用)が主な事業だった。1990年代中ほど以降はフリーソフトウェアの利用者の自由を啓蒙し、「フリー(自由)」であるソフトウェアやファイルフォーマット、在り方を広める[[フリーソフトウェア運動]]を実施していった<ref>{{cite web|title=Stallman interviewed by Sean Daly|url=http://www.groklaw.net/article.php?story=20060625001523547|publisher=Groklaw|date=2006-06-23|accessdate=2018-03-15}}</ref>。また、GPL違反是正(特にコピーレフト違反是正)をソフトウェア開発者やソフトウェアベンダーに強く指導し<ref>{{cite web |last = Kennedy |first = Dennis |date= 2004-01-11 |title = A Great Learning Opportunity for Software Lawyers&nbsp;— Upcoming GPL Seminar |url = http://www.denniskennedy.com/blog/2004/01/a_great_learning_opportunity_f.html |accessdate = 2007-08-11 |archiveurl = https://web.archive.org/web/20070928125310/http://www.denniskennedy.com/blog/2004/01/a_great_learning_opportunity_f.html <!-- Bot retrieved archive --> |archivedate = 2007-09-28}}</ref><ref>{{cite web |url= http://yro.slashdot.org/article.pl?sid=03/07/18/1835252 |publisher= [[Slashdot]] |last = Lord |first = Timothy |date= 2003-07-18 |accessdate = 2007-08-11 |title = Seminar On Details Of The GPL And Related Licenses}}</ref>、時にはライセンス違反の訴えを裁判で争った<ref>{{cite web |last = Paul |first = Ryan |title = Free Software Foundation lawsuit against Cisco a first |date = 2007-12-13 |publisher = Arstechnica.com |url = https://arstechnica.com/news.ars/post/20081211-free-software-foundation-lawsuit-against-cisco-a-first.html |accessdate = 2008-12-11}}</ref>。
 
== UNIXライクUnix系OSの成長 ==
[[File:Unix history.en.svg|thumb|[[UNIXライクUnix系]]OSの系統図]]
1980年代以降、AT&TのUNIXはクローズドソース、プロプライエタリ・ソフトウェアとなったが、それまでに大学等で広く使われていたため、その[[インタフェス (情報技術)|インタフェース]]をベースとしたオペレーティングシステムOSが[[UNIXライクUnix系]]OSとして派生、誕生、成長していった。また、オペレーティングシステムOSに加えて、UNIXライクUnix系OS上で動作する[[グラフィカルユーザインタフェース|GUI]]アプリケーション、コンパイラやプログラミング言語も自由に利用できるソフトウェアとして開発、公開された。[[UNIX]]、[[DOS (OS)|DOS]]、[[Macintosh]]などのプロプライエタリな環境を望まないユーザーにとって好ましいもので、ソフトウェアの利用者、開発者を拡大していった。
 
=== UNIX派生OS ===
1970年代末から[[カリフォルニア大学バークレー校]]でAT&TのUnixUNIXのソースコードをベースとした[[BSD]]が開発された。1977年から[[ビル・ジョイ]]は[[Version 6 Unix]]のアドオンの形でBSDの原形を開発し、1978年3月9日に1BSDをリリースした<ref name="penguin7">{{cite book |first=Peter H. |last=Salus |title=The Daemon, the Gnu and the Penguin |chapter=Chapter 7. BSD and the CSRG |url=http://www.groklaw.net/article.php?story=20050505095249230 |publisher=[[Groklaw]] |year=2005}}</ref>。この時の主なコンポーネントは[[Pascal]]コンパイラと{{仮リンク|ex (エディタ)|en|ex (text editor)|label=ex}}エディタであった。1979年5月にソフトウェアの更新版と[[vi]]エディタ、[[C Shell]]を含む2BSDをリリースした<ref name="tuhs-2bsd">{{cite web|last=Toomey |first=Warren |title=Details of the PUPS archives|url=http://minnie.tuhs.org/PUPS/archive_details.html|work=tuhs.org|publisher=The Unix Heritage Society|accessdate=October 6, 2010}}</ref>。[[1979年]]に[[VAX]]の仮想記憶機能を利用し、[[UNIX/32V]]由来のユーティリティをまとめた完全なOSとして3BSDをリリースした。
3BSDに注目した[[国防高等研究計画局]] (DARPA) は、バークレーの [[Computer Systems Research Group]] (CSRG) に資金提供することを決め、1980年にCSRGは3BSDに様々な改良を加えた4BSDをリリースした<ref>{{cite web|url=http://www.catb.org/esr/writings/taoup/html/ch02s01.html|title=The Art of Unix Programming: Origins and History of Unix, 1969–1995|author=Eric S. Raymond|accessdate=2014-07-18}}</ref>。その後、1980年代の間に4.xBSDが様々な修正、改良を加えリリースされた<ref name="quarterman42bsd">{{cite journal |last=Quarterman |first=John S. | first2 = Abraham | last2 = Silberschatz | first3 = James L. | last3 = Peterson |title=4.2BSD and 4.3BSD as examples of the Unix system |journal=Computing Surveys |date=December 1985 |volume=17 |issue=4 |pages=379–418 |doi=10.1145/6041.6043 |citeseerx = 10.1.1.117.9743 }}</ref>。
 
1980年代末、それまでのBSDの全バージョンでAT&TのプロプライエタリなUnixUNIXのソースコードが含まれており、AT&Tのソフトウェアライセンスを必要としていたため、1989年6月にAT&Tのライセンスが不要なコードのみで構成されたNetworking Release 1 (Net/1) がリリースされた。Net/1リリース後、BSD開発者{{仮リンク|キース・ボスティック|en|Keith Bostic}}は、BSDのAT&Tとは無関係な部分をさらにNet/1と同じライセンスでリリースすることを提案し、1991年6月に自由に再配布可能なほぼ完全なOSであるNetworking Release 2(Net/2)をリリースした。Net/2は[[ウィリアム・ジョリッツ]]らによるフリーな[[386BSD]]プロジェクト(後に[[NetBSD]]と[[FreeBSD]]へ再派生)と{{仮リンク|Berkeley Software Design|en|Berkeley Software Design|label=Berkeley Software Design, Inc.}}(BSDi) (BSDi) のプロプライエタリな[[BSD/OS|BSD/386]]プロジェクト(後にBSD/OSに改称)に派生した。1992年からの2年間、BSDiはSystem Vの著作権とUNIXの商標を所有するAT&Tの[[UNIX Systems Laboratories]](USL) (USL) との間で{{仮リンク|USL-BSDi訴訟|en|UNIX System Laboratories, Inc. v. Berkeley Software Design, Inc.}}に見舞われ、訴訟が解決するまでNet/2の配布は差し止められて開発は停滞することとなった。
 
1980年代中ほどから1990年代序盤にかけて、以前はソースコードが共有されていたUnixUNIXをベースとしたプロプライエタリなオペレーティングシステムOSであるSCOの[[UnixWare]]、IBMのAIXなども開発されていた。UNIXの機能の権利の一部はSCOグループが保有し、後の[[SCO・Linux論争]]の要因となった。
 
=== 独立系UNIXライクUnix系OS ===
1980年代、UnixUNIXがクローズドソースとなり自由に利用できるオペレーティングシステム(OS(カーネル)が存在しなくなったため、UnixUNIXのソースコードを源流とせず、しかしながらUnixUNIXのインタフェースと互換性のあるカーネルの開発が始まった。
 
[[アムステルダム自由大学]]の教授[[アンドリュー・タネンバウム]]は1987年にソースコードが非公開となったAT&TのUnixUNIXの代わりの教育用オペレーティングシステムOS「[[MINIX]]」を著書『''Operating Systems: Design and Implementation''』の中で例として開発した<ref>{{cite book | url = http://minix1.woodhull.com/osdi2/ | title = Operating Systems Design and Implementation | isbn=0-13-638677-6 | year = 1997 | accessdate = August 2, 2011 | first1 = Andrew S. | last1 = Tanenbaum | authorlink1 = アンドリュー・タネンバウム | first2 = Albert S. | last2 = Woodhull | edition = Second |origyear = 1986 | oclc = 35792209 }}</ref>。機能上の新しさはないが、[[マイクロカーネル]]構造を採用するなど、モダンな洗練が行われていた。元々は[[IBM PC]]をターゲットとして開発されたが、その後[[アタリ (企業)|Atariアタリ]]、[[Amiga]]、[[Macintosh]]、[[SPARC]]をはじめ、日本においては[[日本電気|NEC]] [[PC-9800シリーズ]]にも移植された<ref>
{{Cite book |和書 |last= Tanenbaum|first= Andrew |author= |authorlink= アンドリュー・タネンバウム|coauthors= |translator=大西 輝代 |year= 1989|title= MINIXオペレーティング・システム|publisher= 株式会社アスキー|page= 13|id= |isbn= 4-7561-0000-7|quote= }}</ref>。
 
109行目:
=== Linuxの誕生と派生 ===
{{main|Linuxの歴史}}
[[リーナス・トーバルズ]]による「[[Linux]]」は1991年4月より開発が始まった。リーナス・トーバルズの当初の目的は、[[Intel 80386|80386]][[プロセッサ]]を搭載した新しい[[パーソナルコンピュータ]] (PC) の機能を使いたいがための、自身が使用していたハードウェアとオペレーティングシステムOSに依存しないプログラムの作成だった。リーナス・トーバルズは著書『[[それがぼくには楽しかったから|Just for Fun]]』で、MINIXやGNU製カーネルが十分な機能を備えて完成していればカーネルを開発することはなかったが、それが必要だったからLinuxカーネルを開発したと述べている<ref name="fun">{{cite book|last1=Torvalds|first1=Linus|last2=Diamond|first2=David|title=Just For Fun - The Story Of An Accidental Revolutionary|date=2001|publisher=HarperBusiness|location=New York|isbn=0-06-662072-4|url=https://archive.org/details/JustForFun}}</ref>。1991年8月25日にUsenetのニュースグループ「comp.os.minix」へ[[Am386]]、[[Am486]]互換機で動作するフリーなオペレーティングシステムOSを作成したと報告し、利用者からのフィードバックを求めた<ref name="groups.google.com">{{cite web|url = https://groups.google.com/group/comp.os.minix/msg/b813d52cbc5a044b|title = comp.os.minix|accessdate = 2009-09-06|last = Torvalds|first = Linus Benedict|authorlink = |date=August 1991}}</ref>。
 
リーナス・トーバルズはこのシステムをfree・freak・x(Unix)x (Unix) の混成語「Freax」として呼んでいた。Linus・Unixの混成語「Linux」という名前も考えていたが、最初はそれをあまりにも異例のものとして却下していた<ref name="fun" />。1991年に、開発者支援のため{{仮リンク|FUNET|en|FUNET}}の[[FTPサーバ]]にファイルをアップロードする際、当時のFTPサーバ管理ボランティアの{{仮リンク|アリ・レムク|en|Ari Lemmke}}はFreaxは適当な名称ではないと考え、リーナス・トーバルズに相談なくLinuxの名称でファイルをアップロードした<ref name="fun" />。ただし、後からリーナス・トーバルズは承諾している。1992年に[[モノリシックカーネル]]を採用したLinux開発者のリーナス・トーバルズと[[マイクロカーネル]]を採用したMINIX開発者のアンドリュー・タネンバウムは、ニュースグループ「comp.os.minix」でカーネルの在り方やその他[[アンドリュー・タネンバウムとリーヌス・トーヴァルズの議論|多岐に渡り議論]]をした<ref>{{Cite newsgroup | author = A. S. Tanenbaum | authorlink = アンドリュー・タネンバウム | title = LINUX is obsolete | date = 29 January 1992 | newsgroup = comp.os.minix | message-id= 12595@star.cs.vu.nl | url = https://groups.google.com/group/comp.os.minix/browse_thread/thread/c25870d7a41696d2/f447530d082cd95d?tvc=2 | accessdate = 2008-07-16}}</ref><ref>{{Cite newsgroup | author = A. S. Tanenbaum | authorlink = アンドリュー・タネンバウム | title = Re: LINUX is obsolete | date = 30 January 1992 | newsgroup = comp.os.minix |message-id= 12615@star.cs.vu.nl | url = https://groups.google.com/group/comp.os.minix/browse_thread/thread/c25870d7a41696d2/625c4a78723eeef5?#625c4a78723eeef5 | accessdate = 2008-07-16}}</ref><ref name="Tanenbaum05Feb92">{{cite web|url = http://www.educ.umu.se/~bjorn/mhonarc-files/obsolete/msg00088.html|archiveurl = https://web.archive.org/web/20090605091222/http://www.educ.umu.se/~bjorn/mhonarc-files/obsolete/msg00088.html|archivedate = 2009-06-05|title = Re: Unhappy campers|accessdate = 2008-10-19|last = Tanenbaum|first = Andy | authorlink = アンドリュー・タネンバウム |date=February 1992}}</ref><ref name="Tanenbaum_Usenet">Andrew Tanenbaum, Linus Torvalds and others: ''[https://web.archive.org/web/20100503140306/http://www.educ.umu.se/~bjorn/mhonarc-files/obsolete/msg00009.html Linux is obsolete]'' Usenet post, 29 January 1992</ref>。カーネルの在り方は一長一短であり良し悪しを明確に決着することなく、激論を交わしたものの両者は良好な関係でいる<ref name="KenBrown2">{{cite web | url = http://www.cs.vu.nl/~ast/brown/followup/ | title = Ken Brown's Motivation | last = Tanenbaum | first = Andrew S. | authorlink = アンドリュー・タネンバウム | accessdate = 2007-12-24}}</ref>。
 
初期のLinuxは商用利用を禁じたプロプライエタリなライセンスであったが<ref>{{cite book|editor-last1=Heiskanen|editor-first1=Jukka|editor-last2=Mäntylä|editor-first2=Jorma|last=Silvonen|first=Jussi|title=MarxIT: Informaatiokapitalismin kriittistä tarkastelua|year=2003|publisher=The Finnish Karl Marx Society|location=Helsinki|isbn=952-99110-0-9|page=120|chapter=Linux ja vapaat ohjelmat: haaste informaatiokapitalismille?|language=fi}}</ref>、1992年1月5日にリリースしたバージョン0.12のリリースノートで[[GPL]]へのライセンス変更の意向が宣言され<ref>{{cite web |url= https://www.kernel.org/pub/linux/kernel/Historic/old-versions/RELNOTES-0.12 |title= Release notes for Linux kernel 0.12|accessdate=2018-03-15}}</ref>、1992年12月にリリースしたバージョン0.99で[[GNU GPL]]に変更された<ref name="gpl_version">''[ftp://ftp.kernel.org/pub/linux/kernel/Historic/v0.99/linux-0.99.tar.Z z-archive of Linux version 0.99]{{dead link|date=November 2017 |bot=InternetArchiveBot |fix-attempted=yes }}'', kernel.org, December 1992</ref>。
 
自由な利用が可能となったLinuxのソースコードは多くの[[Linuxディストリビューション]]として派生し、1993年に{{仮リンク|パトリック・ボルカディング|en|Patrick Volkerding}}の[[Slackware]]、[[イアン・マードック]]の[[Debian]]へ、1994年に[[Red Hatレッドハット]]の[[Red Hat Linux]]、[[Software and Systems Development Corporation]]の[[SUSE Linux|S.u.S.E]]へと派生していった。
 
=== GUIプラットフォームの開発 ===
{{main|{{仮リンク|GUIの歴史|en|History of the graphical user interface}}}}
[[File:X-Window-System.png|thumb|[[X Window System|X11]]上で動作しているGUIアプリケーション]]
コンピュータの[[GUI]]は1973年に[[ビットマップ]]スクリーンとして[[パロアルト研究所|Xerox PARC]]で初めて実装されていた<ref>{{cite book|last1=Smith|first1=Douglas K.|last2=Alexander|first2=Robert C.|title=Fumbling the Future: How Xerox Invented, then Ignored, the First Personal Computer|date=1988|publisher=William Morrow & Co|isbn=978-0688069599}}</ref>。その後、1983年に[[Appleアップル (企業)|アップル]]の[[Lisa (コンピュータ)|Lisa]]、[[1984年]]に[[マイクロソフト]]の[[Microsoft Windows|Interface Manager]]でプロプライエタリ・ソフトウェアとして採用された<ref>{{cite web|author=Christoph Dernbach |url=http://www.mac-history.net/apple-lisa/2007-10-12/apple-lisa |title=Apple Lisa |publisher=Mac History |date=October 12, 2007 |accessdate=November 15, 2012}}</ref><ref>{{citeweb|url=https://www.thoughtco.com/unusual-history-of-microsoft-windows-1992140|title=The Unusual History of Microsoft Windows|date=2019-01-17|author=Mary Bellis|publisher=ThoughtCo|accessdate=2018-03-15}}</ref>。1980年代からUNIXライク[[Unix系]]OS上でもGUIプラットフォーム、アプリケーションが開発された。
 
1983年に、[[スタンフォード大学]]のポール・アセントと{{仮リンク|ブライアン・レイド|en|Brian Reid (computer scientist)}}は[[V (オペレーティングシステム)|Vオペレーティングシステム-System]]の[[ウィンドウシステム]]として「[[W Window System]]」を開発した。1984年5月に、[[マサチューセッツ工科大学]](MIT) (MIT) の{{仮リンク|ボブ・シャイフラー|en|Bob Scheifler}}はW Window Systemの同期機構を非同期機構に変更し、名称を「[[X Window System]]」にしてリリースした。X Window Systemは速度性能の改善、カラー化、多機種ハードウェア対応を重ねた。1985年にX6が[[MIT license]]でリリースされ、世界で初めて完全に自由に利用できるソフトウェアのGUIプラットフォームとなった。1986年にリリースされたX10は[[ディジタル・イクイップメント・コーポレーション|DEC]][[IBM]]、[[サン・マイクロシステムズ|Sun]]などのプロプライエタリ・ソフトウェアを扱うベンダーにも採用された。X10で大きな支持を得たX Window Systemは更なる非依存性が求められたが、MITにはその余力がなかったためDEC WSLが開発してX10と同条件でリリースすることが提案され、受け入れられた。次バージョンとなるソフトウェアのプロトコル仕様は[[USENET]]で公開協議で決定され、1987年9月15日にその後のX Window Systemの代名詞となる「[[X11]]」がリリースされた。
 
X11はUNIXライクUnix系OSのGUIシステムのコアとして利用され、1987年にX11上で動作する軽量な[[ウィンドウマネージャ]]「[[twm]]」が[[MIT licenseLicense]]でリリースされた。twmのリリース直後の正式名称はTom's Window Managerだったが、1989年の{{仮リンク|X Consortium|en|X Consortium}}でTab Window Managerに変更が発表された。1990年代にはtwmのソースコードを元にした{{仮リンク|vtwm|en|vtwm}}、{{仮リンク|tvtwm|en|tvtwm}}、[[CTWM]]、[[FVWM]]などの多数のウィンドウマネージャが開発された。ウィンドウマネージャはGUIアプリケーションを開発する基盤として有用で、ウィンドウマネージャが存在することが前提で動作する[[Xterm]]、{{仮リンク|Xclock|en|Xclock}}、{{仮リンク|Xbiff|en|Xbiff}}、[[manページ|man]]などのソフトウェア開発が続いた。
 
ウィンドウマネージャは比較的軽量だったがそれゆえに総合的な観点での機能性、優美性は低く、1993年にプロプライエタリ・ソフトウェアとしてリリースされていた[[CDE]]に比べて見劣りしていた。1996年に[[エバーハルト・カール大学テュービンゲン]]の学生だった[[マティアス・エトリッヒ]]は[[デスクトップ環境]]「[[KDE]]」とそれを構築するためのフレームワーク「[[Qt]]」をリリースした<ref>{{cite newsgroup |title= New Project: Kool Desktop Environment (KDE) |url= https://groups.google.com/group/de.comp.os.linux.misc/msg/cb4b2d67ffc3ffce |first= Matthias |last= Ettrich |newsgroup= de.comp.os.linux.misc |message-id= 53tkvv$b4j@newsserv.zdv.uni-tuebingen.de |date= 14 October 1996 |accessdate= 2006-12-29}}</ref>。また、1997年からGNUプロジェクトは「[[GNOME]]」の開発を始めた<ref>{{Cite web|title = The GNOME Desktop project.|url = https://mail.gnome.org/archives/gtk-list/1997-August/msg00123.html|website = mail.gnome.org|accessdate = 2015-08-11|date = 1997-08-15|first = Miguel|last = de Icaza}}</ref>。
 
=== 自由なプログラミング言語の誕生 ===
1980年代後半から自由な利用ができる新しい[[プログラミング言語]]が幾つか誕生した。
 
1987年に[[Perl]]、1991年に[[Python]]、1995年に[[Ruby]]がインタプリタの[[スクリプト言語]]としてリリースされた<ref>{{cite newsgroup |author = Larry Wall |title = v13i001: Perl, a "replacement" for awk and sed, Part01/10 |date = 1988-02-01 |newsgroup = comp.sources.unix |message-id = |url = https://groups.google.com/forum/#!topic/comp.sources.unix/Njx6b6TiZos |accessdate = 2011-01-13 }}</ref><ref>{{cite web |url=http://python-history.blogspot.com/2009/01/brief-timeline-of-python.html |title=The History of Python: A Brief Timeline of Python |work=Blogger|date=20 January 2009 |accessdate=20 March 2016}}</ref><ref>{{cite web|url=http://blade.nagaokaut.ac.jp/cgi-bin/scat.rb/ruby/ruby-talk/382|title=ruby-talk:00382 Re: history of ruby|publisher=|accessdate=2 May 2015}}</ref>。それらのスクリプト言語はホビイストやハッカーの手軽なツール、[[HTTPサーバ]]の[[Common Gateway Interface|CGI]]として多用された
 
[[サン・マイクロシステムズ]]は1995年に[[Java仮想マシン]]用に[[Java]]言語を開発し<ref>{{cite web |url=http://java.sun.com/features/1998/05/birthday.html |title=Java technology: The early years |last=Byous |first=Jon |date=c. 1998 |work=Sun Developer Network |publisher=[[サン・マイクロシステムズ]] |accessdate=2005-04-22|archiveurl=https://web.archive.org/web/20050420081440/http://java.sun.com/features/1998/05/birthday.html |archivedate=April 20, 2005}}</ref>、コンパイラと実行環境を無償で提供した<ref name="oraclejavahistory">{{cite web | url=http://www.oracle.com/technetwork/java/javase/overview/javahistory-index-198355.html | title=The History of Java Technology | accessdate=October 6, 2012}}</ref>。Java仮想マシンは[[Windows]]、[[Mac OS]]、[[Linux]]、そして当然サン・マイクロシステムズの[[Solaris]]で動作した。また、Java仮想マシンと[[ウェブブラウザ]]を連携させてウェブブラウザ上でJavaソフトウェアを動かす[[Java Appletアプレット]]はソースコードの入手、学習、実行の容易さに加えて、プログラマからエンドユーザーへの頒布のハードルの高さを下げた。
Java仮想マシンはプロプライエタリ・ソフトウェアであったが、その上で動作するソフトウェアがプロプライエタリでなければならない制約はなかったため、Javaソフトウェアのソースコードは開発者同士でインターネットを通して共有された。また1990年代後半にはウェブブラウザ上で動作するプログラミング言語、ソフトウェア環境として[[JavaScript]]、[[Adobe Flash|Macromedia Flash]] ([[ActionScript]]) が登場した<ref name="press_release">{{citeweb|url=http://wp.netscape.com/newsref/pr/newsrelease67.html|archivedate=2007-09-16|archiveurl=https://web.archive.org/web/20070916144913/http://wp.netscape.com/newsref/pr/newsrelease67.html|title=Press release announcing JavaScript, "Netscape and Sun announce JavaScript"|publisher=PR Newswire| date= December 4, 1995|accessdate=2018-03-15}}</ref>。
 
しかし、ソースコードから実行形式のソフトウェアを出力できるプログラミング言語およびコンパイラは依然として限られており、GNUプロジェクトの[[GNUコンパイラコレクション|GCC]]が対応する[[C++|C/C++]]が主流のプログラミング言語だった。
158行目:
 
=== Apache Jakartaプロジェクトの邁進 ===
[[Apache HTTP Server]]を開発していた[[Apache Software Foundationソフトウェア財団]]はソースコードの共有が一般になされている[[Java]]言語に着目し、1999年に[[Apache License]]でJavaソースコードとライブラリをリリースする「[[Jakarta Project]]」を始動した<ref>{{cite web |url=http://www.javaworld.com/javaworld/jw-06-1999/jw-06-sunapache_p.html |title=Sun and Apache team up to deliver servlet and JSP code |author=Jason Hunter |date=June 1999 |work=JavaWorld |publisher=International Data Group |page=1 |accessdate=22 February 2012}}</ref>。
 
Jakarta Projectは、汎用共通ライブラリ[[Apache Commons|Commons]]、テキストテンプレートエンジン[[Apache Velocity|Velocity]]、全文検索エンジン[[Apache Lucene|Lucene]]、MSオフィスファイル操作[[Apache POI|POI]]など<ref>
{{Citation|last=Goyal|first=Vikram|url=http://www.onjava.com/pub/a/onjava/2003/06/25/commons.html|title=Using the Jakarta Commons, Part I|accessdate=August 13, 2006|year=2003}}</ref><ref>{{citation| first1 = Jim| last1 = Cole| first2 = Joseph| last2 = D. Gradecki| date = July 16, 2003| title = Mastering Apache Velocity| edition = 1st| publisher = [[John Wiley & Sons|Wiley]]| page = 372| isbn = 978-0-471-45794-7| url = http://www.wiley.com/WileyCDA/WileyTitle/productCd-0471457949.html}}</ref><ref>{{Cite web|url=https://lucene.apache.org/|title=Welcome to Apache Lucene|accessdate=21 December 2017|at=Lucene™ News section}}</ref><ref>{{citation | url = http://www.javaworld.com/javaworld/jw-03-2004/jw-0322-poi.html | title = Excelling in Excel with Java | first = Elango | last = Sundaram | publisher = Java World | date = 2004-03-22}}</ref>、多数のJavaユーティリティライブラリを開発、公開した。Jakarta Projectは1999年に[[サン・マイクロシステムズ|Sun]] [[Java Platform, Enterprise Edition|J2EE]]の[[Java Servlet]]に互換性を持つ「[[Apache Tomcat|Jakarta Tomcat]]」をリリースした<ref>{{cite web|url=http://technotif.com/the-origin-story-of-tomcat/|title=The Origin Story of Tomcat|publisher=TechNotif|accessdate=23 July 2017}}</ref>。
 
2000年6月19日にJakarta Tomcatを主用途としたJava向け[[ビルドツール]]「[[Apache Ant|Jakarta Ant]]」をリリースし<ref>{{cite web | url=https://ant.apache.org/faq.html#history | title=Tell us a little bit about Ant's history.|accessdate=2019-03-15| publisher= Apache Software Foundationソフトウェア財団}}</ref>、2002年3月30日に依存ライブラリ管理機能やマルチプロジェクト統合管理機能を持つ「[[Apache Maven|Jakarta Maven]]」をリリースした<ref>{{cite web | url=https://maven.apache.org/docs/history.html | title=Maven Releases History|accessdate=2019-03-15| publisher= Apache Software Foundationソフトウェア財団}}</ref>。Jakarta Mavenはビルドファイルに依存ライブラリのURIを記述することでビルド時に自動的に依存ライブラリをダウンロード、コンパイルするパッケージ管理とビルド(コンパイル)を一連の処理として扱った、[[Java]]の[[gradle]]、[[Go (プログラミング言語)|Go言語]]のgo、[[Rust (プログラミング言語)|Rust言語]]のcargoなどの先駆けとなるツールであった。
 
=== LAMPとウェブサービスの繁栄 ===
174行目:
1990年代までのソフトウェア開発はプログラミングをするエディタとコンパイルするターミナルのウィンドウを切り替えて開発をしていたが、それらを一つのウィンドウ(アプリケーション)にまとめて加えてデバッガ連動、入力補完、プログラム実行などの開発補助をする[[統合開発環境]](IDE)が登場した<ref name="Cagan90">{{cite journal |last1=Cagan |first1=Martin R. |title=The HP SoftBench Environment: An Architecture for a New Generation of Software Tools |journal=Hewlett-Packard Journal |volume=41 |issue=3 |date=June 1990 |pages=36–47}}</ref>。IBMは2001年11月にJava言語を対象としたIDE「[[Eclipse (統合開発環境)|Eclipse]]」をリリースした<ref name="VisualAge">{{cite web |work=Eclipse Wiki |title=Where did Eclipse come from? |url=http://wiki.eclipse.org/FAQ_Where_did_Eclipse_come_from%3F |access-date=16 March 2008}}</ref>。Javaの隆盛と供に爆発的に利用者が増えたEclipseは管理、開発体制の見直しがなされ、2004年にIBMから独立した組織である[[Eclipse Foundation]]に譲渡され<ref>{{cite web |title= About the Eclipse Foundation |url= http://www.eclipse.org/org |access-date=13 August 2008 |publisher= The Eclipse Foundation}}</ref>、Javaに限らずプラグインで任意のプログラミング言語を対象とするIDEとなった<ref>{{cite web|url=https://www.ibm.com/developerworks/library/os-ecplug/|title=Developing Eclipse plug-ins|last=Gallardo|first=David|date=1 December 2002|website=IBM developerWorks|access-date=5 February 2018}}</ref> 。開発効率を上げる統合開発環境はソースコードを読み書きする開発者に受け入れられた。
 
1990年11月19日にリリースされた[[Concurrent Versions System]](CVS)や2000年10月20日にリリースされた[[Subversion]](SVN) (SVN) のような[[バージョン管理システム]]はソフトウェアプロジェクトでソースコードなどのファイルと変更履歴の管理をサポートした。1999年11月に立ち上げられた[[SourceForge.net]]はCVSのホスティングサービスを提供し、多くのオープンソースソフトウェアのプロジェクトを支援した。Linuxカーネルの開発では2002年から2005年の間、分散管理システムの[[BitKeeper]]が使われていた。2005年にBitKeeperが利用できなくなってからは、[[git]]をソースコードの分散管理システムとして開発し、利用を開始した。開発者が不特定多数で自由に利用、修正するオープンソースでは[[クライアントサーバモデル]]のバージョン管理システムより[[P2P|P2Pモデル]]の分散型バージョン管理システムが好まれ、2005年4月19日リリースの[[mercurial]]、2007年12月14日リリースの[[bazaar]]など幾つかの分散管理システムが登場した。また、ソースコードのホスティングサービスも2005年にGoogleの[[Google Developers]]、2006年にマイクロソフトの[[CodePlex]]、2008年に[[github]]、[[bitbucket]]が登場した。
 
== 対立と論争 ==
181行目:
=== GNU/Linux名称論争 ===
{{main|GNU/Linux名称論争}}
[[1990年代]]中程以降、GNUプロジェクトの創始者である[[リチャード・ストールマン]]は[[Linux]]を「Linux」ではなく「GNU/Linux」と呼ぶことを[[Debian]]を含む[[Linux]]関連ソフトウェアベンダーに依頼していた<ref>{{cite book | author=Sam Williams | title=Free as in Freedom: Richard Stallman's Crusade for Free Software | chapter=Chapter 10 | chapterurl=http://www.oreilly.com/openbook/freedom/ch10.html | publisher=O'Reilly | year=2002}}</ref>。他者の開発するソフトウェアの名称を指定する名称変更の依頼は賛成派と反対派に分かれる[[GNU/Linux名称論争]]となり、[[Linuxディストリビューション]]やLinux向け[[ソフトウェア]]を開発する利用者がどのような名称で[[Linux]]を扱うかの論争となった。
 
フリーソフトウェア財団はフリーソフトウェアおよびGNUプロジェクトの啓蒙のためのGNU/Linuxの名称を使用していることを明言し、その上でそれがフリーソフトウェア運動として意味のあることと主張している<ref name="fsf-faq">{{cite web | url=http://www.gnu.org/gnu/gnu-linux-faq.html | title=GNU/Linux FAQ | accessdate=2008-12-13
}}</ref>。リチャード・ストールマンは名称変更運動が自己中心主義または個人な感情から生じているという指摘に対し、個人の名声ではなくGNUプロジェクトへの名声のために名称変更を主張していると述べている<ref name="stallman-transcript">{{cite web | author=Richard Stallman | url=http://www.gnu.org/events/rms-nyu-2001-transcript.html | title=Free Software: Freedom and Cooperation - transcript of speech at New York University in New York, New York | date=2001-05-29 | accessdate=2008-12-18}}</ref>。
 
Linuxの開発者である[[リーナス・トーバルズ]]はGNU/Linuxという名称の存在は否定しないが、それはGNUプロジェクトの[[Linuxディストリビューション]]に与えられる名称であり、 Linux全般をGNU/Linuxと呼ぶことは適切ではない述べている<ref>{{cite video | people=Moore, J.T.S.(制作、監督、脚本) | title=Revolution OS | medium=DVD | year=2001}}</ref>。『[[Linux Journal]]』はリチャード・ストールマンのは名称変更の啓蒙活動は、「リーナスが、ストールマンがしたかったことで称賛を得た」ことに対するフラストレーションに起因するのではないかと推測している<ref>{{cite web | url=http://linux4u.jinr.ru/usoft/WWW/LJ/issue30/issue30.html#ftp30 | title=From the Publisher: On the Politics of Freedom | publisher=Linux Journal #30 | date=1996-10 | quote=Perhaps RMS is frustrated because Linus got the glory for what RMS wanted to do | accessdate=2008-12-20}}</ref>。
 
=== フリーソフトウェアとオープンソース ===
195行目:
2007年、リチャード・ストールマンはオープンソースの概念はフリーソフトウェアが主観にしている利用者の重要な自由を守るに足りえないとして、オープンソースはフリーソフトウェアの的を外していると批判した<ref name="gnu-oss-misses">{{citeweb|author=Richard Stallman|authorlink=リチャード・ストールマン|date=2016-11-18|url=https://www.gnu.org/philosophy/open-source-misses-the-point.html|title=Why Open Source misses the point of Free Software|accessdate=2018-02-09}}</ref>。
 
2013年、リチャード・ストールマンはフリーソフトウェア運動が問題視している利用者の自由への不当性をオープンソースは問題視していないと述べ、フリーソフトウェアの理念を正しく伝えるため「[[オープンソースソフトウェア|OSS]](Open (Open Source Software)Software) 」ではなく、フリーソフトウェアとオープンソースを複合した用語の「[[FLOSS]](Free (Free/Libre and Open Source Software)Software) 」の利用を推奨した<ref name="gnu-floss">{{citeweb|author=Richard Stallman|authorlink=リチャード・ストールマン|date=2016-11-18|url=https://www.gnu.org/philosophy/floss-and-foss.html|title=FLOSS and FOSS|accessdate=2018-02-09}}</ref>。また、文章として表現する場合でも「フリーソフトウェアとオープンソースソフトウェア」のようにフリーソフトウェアを明示している。
 
「FLOSS」や「フリーソフトウェアとオープンソースソフトウェア」の表現は、フリーソフトウェア財団とオープンソース・イニシアティブの対立に起因するが、ウィキペディアでは一般的に使用されている用語かは別として中立性のために、広義の[[オープンソースソフトウェア]](OSS)を表す場合に[[Portal:FLOSS]]や{{tl|FOSS}}のタイトルなどで使用している([[Portal‐ノート:FLOSS/過去ログ1#FLOSSに関する各カテゴリの扱いについて|FLOSSに関する各カテゴリの扱いについて]]、[[Portal‐ノート:FLOSS/過去ログ1#ポータルの名称|ポータルの名称]]、[[special:permaLink/19184238|Template:FOSS]])。
213行目:
 
== オープンソースソフトウェア ==
2000年代後半から、1960年代にソフトウェア開発コストの増加により企業の[[プロプライエタリ・ソフトウェア]]になっていた[[オペレーティングシステム]]OSとプログラミング言語の[[コンパイラ]]が企業の[[オープンソースソフトウェア]]として提供されるようになった。
 
=== オープンソースOS ===
[[Ubuntu]]は2004年にユーザビリティの高いLinuxディストリビューションとなることを目標として[[Debian]]から派生して開発された<ref>{{citeweb|url=https://www.atlantic.net/cloud-hosting/a-brief-history-of-linux-distributions/|title=A Brief History of Linux/Open Source Distributions|author=Kent Roberts|publisher=atlantic.net|date=2014-09-16|accessdate=2018-03-15}}</ref>。従来Linuxはコンピュータにある程度詳しいホビイスト、ハッカーが利用するオペレーティングシステムOSだったが、Ubuntuはコンピュータにさほど詳しくない利用者でも利用できるようインストール方法に[[LiveCD]]を採用し、GUIもWindows相当に利便化した環境を提供した。2010代初頭には、[[ユーザエージェント]]から判断する限りでは、インターネットトラフィックの0.5%から0.65%の割合を占めていた<ref name=wikimedia-stats>{{cite web|last=Zachte|first=Eric|title=Operating Systems (December 2011)|url=http://stats.wikimedia.org/archive/squid_reports/2011-12/SquidReportOperatingSystems.htm|work=Wikimedia Traffic Analysis Report|publisher=Wikimedia Foundation|accessdate=23 January 2012}}</ref><ref name=clicky-stats>{{cite web|title=Linux (Global marketshare)|url=http://getclicky.com/marketshare/global/operating-systems/linux/|work=Clicky Web Analytics|publisher=Roxr Software Limited|accessdate=23 January 2012}}</ref>。また、2014年に{{仮リンク|Ubuntu Touch|en|Ubuntu Touch}}をタッチパネルデバイス用に開発した。
 
[[Google]]は2005年にAndroid Inc.を買収し<ref name="Google Buys Android">{{cite web |first=Ben |last=Elgin |title=Google Buys Android for Its Mobile Arsenal |url=http://www.businessweek.com/technology/content/aug2005/tc20050817_0949_tc024.htm |archiveurl=https://web.archive.org/web/20110205190729/http://www.businessweek.com/technology/content/aug2005/tc20050817_0949_tc024.htm |website=[[Bloomberg Businessweek]] |publisher=[[Bloomberg L.P.]] |date=August 17, 2005 |archivedate=February 5, 2011 |accessdate=March 12, 2017}}</ref>、オペレーティングシステムOSとしてLinux、アプリケーション実行環境としてJava仮想マシン[[Dalvik仮想マシン]]を採用した[[Android]]の開発を始め、2008年にHTC製タッチパネルスマートフォン[[HTC Dream]]を発売した<ref>{{cite web |first=Doug |last=Aamoth |title=T-Mobile officially announces the G1 Android phone |url=https://techcrunch.com/2008/09/23/t-mobile-officially-announces-the-g1-android-phone/ |website=[[TechCrunch]] |publisher=[[AOL]] |date=September 23, 2008 |accessdate=March 12, 2017}}</ref><ref>{{cite web |first=Richard |last=Gao |title=Android and its first purchasable product, the T-Mobile G1, celebrate their 8th birthdays today |url=http://www.androidpolice.com/2016/09/23/android-first-purchasable-product-t-mobile-g1-celebrate-8th-birthdays-today/ |website=Android Police |date=September 23, 2016 |accessdate=March 12, 2017}}</ref>。また、Googleは2009年にウェブブラウザ[[Chrome]]の技術をベースにクラウドにアプリケーションとユーザーデータを保存する[[Chrome OS]]の開発を発表した<ref name="Chrome OS official ann">{{cite web|url=http://googleblog.blogspot.com/2009/07/introducing-google-chrome-os.html|title=Introducing the Google Chrome OS|last=Pichai|first=Sundar|date=July 7, 2009|work=Official Google Blog|publisher=Google, Inc.|accessdate=July 11, 2012}}</ref>。
 
[[Nokia]]は2010年に[[Symbian]]がクローズドソースで開発、販売していた[[Symbian OS]]をオープンソースソフトウェアで公開した<ref name=OpenSource>{{Citation | publisher = Symbian Foundation | author-link = Symbian Foundation | title = Symbian Completes Biggest Open Source Migration Project Ever | date = 4 February 2010 | url = http://www.symbian.org/news-and-media/2010/02/04/symbian-completes-biggest-open-source-migration-project-ever | accessdate = 7 February 2010}}</ref>。[[LiMo Foundation]]は2010年にLinuxベースのモバイル向けオペレーティングシステムOSである[[MeeGo]]をリリースした<ref>{{Cite web |author=Imad Sousou & Valtteri Halla |coauthors=MeeGo Technical Steering Group |date=2010-05-26 |url=http://lists.meego.com/pipermail/meego-dev/2010-May/002505.html |title=MeeGo v1.0 Core Software Platform & Netbook User Experience project release publisher=MeeGo-dev mailing list |language=英語 |accessdate=2010-08-14 |archiveurl=http://web.archive.org/web/20100601173817/http://lists.meego.com/pipermail/meego-dev/2010-May/002505.html |archivedate=2010-06-01}}</ref>。Symbian、MeeGoは日本では[[MOAP#MOAP(S)|MOAP(S)]]、[[MOAP#MOAP(L)|MOAP(L)]]として2000年代の[[フィーチャー・フォン]]で採用されていた。
 
=== 企業スポンサーの高級言語 ===
2010年代前半から企業をスポンサーとした[[高級プログラミング言語]]が発表、開発された。開発されたプログラミング言語はインタプリタエンジンが処理する[[スクリプト言語]]Virtual Machineで動作する[[仮想機械|仮想マシン]]で動作するVM言語]]マシンコード機械語にコンパイルする[[コンパイル言語]]と多様である。
 
それぞれの言語に企業スポンサーがついているが、コンパイラ等はオープンソースライセンスで公開されており、コミュニティベースで仕様策定、実装、評価が行われ、プログラミング言語の利用者がプログラミング言語の開発者でもあるオープンソースソフトウェアである。[[Go (プログラミング言語)|Go]]、[[Rust (プログラミング言語)|Rust]]、[[Swift (プログラミング言語)|Swift]]はソースコードから実行形式のソフトウェアを出力が可能であり、長年続いた[[C++|C/C++]]と[[GNUコンパイラコレクション|GCC]]の組み合わせに代わりうるコンパイル言語である<ref>{{cite news|url=https://techcrunch.com/2009/11/10/google-go-language/|title=Google’s Go: A New Programming Language That’s Python Meets C++|last=Kincaid |first=Jason |date=10 November 2009 |newspaper=TechCrunch |accessdate=18 January 2010}}</ref><ref>{{cite web |first=Andrew |last=Binstock |title=The Rise And Fall of Languages in 2013 |website=Dr Dobb's |url=http://www.drdobbs.com/jvm/the-rise-and-fall-of-languages-in-2013/240165192|accessdate=2018-03-15}}</ref><ref>{{cite web|url=https://www.technologyreview.com/news/527821/apple-seeks-a-swift-way-to-lure-more-developers|title=Apple Seeks a Swift Way to Lure More Developers|first1=Rachel|last1=Metz|date=June 3, 2014|publisher=Technology Review|accessdate=2018-03-15}}</ref>。
 
[[Adobeアドビシステムズ|アドビ]]は2007年4月26日にActionScriptのコンパイラのソースコードを「[[Adobe Flex|Adobe Flex SDK]]」として[[Mozilla Public License]]で公開した<ref>{{cite web|url=http://blogs.zdnet.com/Burnette/?p=296|title=Adobe keeps Flash, Flex close to the vest|publisher=[[Zdnet]]|accessdate=2008-02-09| archiveurl= https://web.archive.org/web/20080207061131/http://blogs.zdnet.com/Burnette/?p=296| archivedate= 2008-02-07 | deadurl= no}}</ref> 。その後、Adobe FlexはAdobeのFlash事業縮小に前後して[[2011年]]にApache Software Foundationソフトウェア財団に寄贈され<ref>{{cite web|url=http://www.techworld.com.au/article/407714/adobe_donates_flex_apache|title=Adobe donates Flex to Apache|publisher=Techworld|accessdate=2011-11-17}}</ref>、Apache Flexとして[[Apache License]]で公開された<ref>{{cite web|url=https://blogs.apache.org/flex/entry/apache_flex_4_8_0|title=Apache Flex 4.8.0-incubating Released|accessdate=2019-03-15}}</ref>。[[Google]]は2011年10月10日にJavaScriptやActionScript(AdobeActionScript (Adobe Flash) Flash)に代わりウェブブラウザ上で高速動作するスクリプト言語「[[Dart]]」の開発を発表した<ref>{{Citation | contribution-url= http://gotocon.com/aarhus-2011/presentation/Opening%20Keynote:%20Dart,%20a%20new%20programming%20language%20for%20structured%20web%20programming | format= presentation | type= opening keynote | contribution= Dart, a new programming language for structured web programming | title= GOTO conference | url= http://gotocon.com/aarhus-2011/ | place= Århus conference | date= 2011-10-10}}</ref>。Dartエンジンは同社製Chromeウェブブラウザで試験実装され、他社製ウェブブラウザへ展開することが計画されていたが、正式採用されることはなく開発は2017年に収束報告がなされた<ref>{{citeweb| date=2017-04-10| author=Brad Green |url=https://blog.angularjs.org/2017/04/official-languages-at-google.html| title=Official languages at Google| publisher=Google|accessdate=2018-03-15}}</ref>。[[マイクロソフト]]は[[2012年]][[10月1日]]にJavaScriptの型安全性を補完し、実行速度を最適化するスクリプト言語「[[TypeScript]]」を発表した<ref>{{cite web |url = http://www.infoworld.com/d/application-development/microsoft-augments-javascript-large-scale-development-203737 |title = Microsoft augments JavaScript for large-scale development |date = 1 October 2012 |work = InfoWorld |publisher = International Data Group |accessdate = 26 April 2015 }}</ref><ref>{{cite web |url = http://blogs.msdn.com/b/typescript/archive/2014/04/02/announcing-typescript-1-0.aspx |title = Announcing TypeScript 1.0 |date = 2 April 2014 |first = Jonathan |last = Turner |publisher = Microsoft |work = TypeScript Language team blog |accessdate = 26 April 2015 }}</ref>。TypeScriptは[[トランスパイル]]することでJavaScriptに変換することができ、既存のウェブブラウザで動作するJavaScriptエンジン互換のスクリプト言語であった<ref>{{cite web |url = https://arstechnica.com/information-technology/2012/10/microsoft-typescript-the-javascript-we-need-or-a-solution-looking-for-a-problem/ |title = Microsoft TypeScript: the JavaScript we need, or a solution looking for a problem? |first = Peter |last = Bright |date = 3 October 2012 |work = Ars Technica |publisher = Condé Nast |accessdate = 26 April 2015 }}</ref>。
 
[[サン・マイクロシステムズ]]は2007年にJava Development Kitのオープンソースソフトウェア版「[[OpenJDK]]」をリリースした<ref>{{cite web| url= http://www.sun.com/2006-1113/feature/index.jsp| title = Sun Opens Java| publisher=サン・マイクロシステムズ| date = November 13, 2006|accessdate=May 9, 2007 |archiveurl = https://web.archive.org/web/20070421151747/http://www.sun.com/2006-1113/feature/index.jsp <!-- Bot retrieved archive --> |archivedate = April 21, 2007}}</ref>。[[マイクロソフト]]は2014年[[11月12日]]に.NET Frameworkのコンパイラ、ライブラリ、ランタイム (.NET VM)VM) を「[[.NET Core]] 5」としてリリースした<ref>{{cite web|last1=Bright|first1=Peter|title=.NET Core 1.0 released, now officially supported by Red Hat|url=https://arstechnica.com/information-technology/2016/06/net-core-1-0-released-now-officially-supported-by-red-hat/|website=[[Ars Technica]]|publisher=[[Condé Nast]]|date=27 June 2016|accessdate=2018-03-15}}</ref>。
 
[[Google]]は2012年3月にマルチコアのマシンでプログラマが意識することなくマルチスレッドを最適化して実行する「[[Go (プログラミング言語)|Go言語]]」を発表した<ref>
{{cite news| last1 = Shankland| first1 = Stephen| title = Google's Go language turns one, wins a spot at YouTube: The lower-level programming language has matured enough to sport the 1.0 version number. And it's being used for real work at Google.| url = https://www.cnet.com/news/googles-go-language-turns-one-wins-a-spot-at-youtube/| department = News| website = CNet| publisher = CBS Interactive Inc| publication-date = 2012-03-30| access-date = 2017-08-06| quote = Google has released version 1 of its Go programming language, an ambitious attempt to improve upon giants of the lower-level programming world such as C and C++. }}</ref>。[[Mozilla Foundation]]は2012年1月に速度、安全性、平行性を言語仕様特徴として謳うシステムプログラミング向けの「[[Rust (プログラミング言語)|Rust言語]]」を発表した<ref name="rustc-0.1">{{cite web|url=https://www.reddit.com/r/programming/comments/opgxd/mozilla_and_the_rust_community_release_rust_01_a/|title=Mozilla and the Rust community release Rust 0.1 (a strongly-typed systems programming language with a focus on memory safety and concurrency)|author=catamorphism|date=2012-01-20|accessdate=2012-02-06}}</ref>。[[Apple]]アップルは2014年6月に[[iOS (アップル)|iOS]]/[[macOS]]用プログラミング言語のObjective-Cの文法をモダンにリフォーマットした「[[Swift (プログラミング言語)|Swift]]」を発表した<ref name=stateoftheplatforms>Platforms State of the Union, Session 102, Apple Worldwide Developers Conference, June 2, 2014</ref><ref name="Swift Blog">{{cite web|url=https://developer.apple.com/swift/blog/?id=14|title=Swift Has Reached 1.0|date=September 9, 2014|accessdate=September 10, 2014}}</ref> 。
 
== 脚注 ==