UNIX
UNIX (ユニックス、Unix、テンプレート:IPA2[1])は、コンピュータ用のマルチタスク・マルチユーザーのオペレーティングシステムの一種である。公式な商標は「UNIX」だが、商標以外の意味として「Unix」、またはスモールキャピタルを使用して「Unix」などとも書かれる。Unixは1969年、AT&Tのベル研究所にて、ケン・トンプソン、デニス・リッチー、ブライアン・カーニハン、テンプレート:仮リンク、テンプレート:仮リンク、テンプレート:仮リンクらが開発を開始した。
当初アセンブリ言語で開発されたが、1973年にほぼ全体をC言語で書き直したことでその後の開発が容易になり、他のハードウェアの移植性も向上した。現在では「Unix」という語は、Unix標準に準拠するあらゆるオペレーティングシステムの総称でもある。現在ではUnixシステムは多数の系統に分かれており、AT&T開発時代の後も、多数の商用ベンダーや非営利組織などによって開発が続けられている。
1970年代から1980年代の初期にかけて、Unixは大学や研究所などの教育機関で広範囲に採用され、特にカリフォルニア大学バークレー校をオリジナルとするBSD系統が誕生した。また Version 7 Unix や UNIX System V の特徴を持つオペレーティングシステムは「伝統的なUNIX」(traditional Unix)とも呼ばれる。
2007年に、「UNIX」の商標の所有者である標準化団体の The Open Group は、Single UNIX Specification を完全に満たすと認証を受けたシステムのみが「UNIX」の商標を得られるとした。このためそれ以外のシステムは(ずっと以前から、AT&T版およびBSD以外を指して使われていた用語だが)「Unixシステムライク」または「Unixライク(Unix系)」と呼ばれるようになった。ただし The Open Group はその呼称を気に入っていない[2]。
現在では多く使われているUnixとしてはAIX、HP-UX、Solaris、Mac OS X(10.5以降)[3]などがある(いずれも商用)。また認証を受けていないUnix系としてはLinux(派生OSにAndroid他)やMinix、BSDの派生OS(FreeBSD、NetBSD、OpenBSD、DragonFly BSD など)がある[4]。
目次
概説
Unix オペレーティングシステムは、サーバやワークステーションだけでなく、携帯機器でも広く使われている[5]。またUnix環境とクライアントサーバモデルは、個々のコンピュータによるコンピュータ処理を、コンピュータネットワークで連係されたコンピュータ処理に変革し、インターネット構築の重要な要素ともなった。
もともとUnixは「プログラマの仕事台」を意図して開発されたもので、アプリケーションソフトウェアを動作させる汎用OSは意図していなかった。このOSが学界に広がり始めると、ユーザーが自前のツールをその上で作り、それを同僚などと共有する形でシステムが大規模化していった[6]。
UnixとC言語はAT&Tにより開発され、政府や教育機関に配布され、他のオペレーティングシステムよりも幅広く各種のコンピュータファミリーに移植された。このためUnixは「オープンシステム」の同義語となった。
Unixは移植性、マルチタスク、タイムシェアリング方式によるマルチユーザなどを重視して設計された。Unixシステムは、様々なコンセプトで特徴付けられている。データの格納にプレーンテキストを使用する事、階層型のファイルシステム、各種の周辺装置やある種のプロセス間通信 (IPC) をファイルとして扱う事、多数のソフトウェアツールを組み合わせて使用する事、簡単なプログラムはコマンドラインインタプリタのパイプを使ってつなげることができ、単一の多機能プログラムで同等機能を実装するのとは逆の発想であること、などである。これらのコンセプトはUNIX哲学として知られている。カーニハンとロブ・パイクはこれを『UNIXプログラミング環境』 (The Unix Programming Environment) という本で「システムのパワーは、プログラム自身からではなくプログラム間の関係から生じるという考え方」としている。
Unixでは、「オペレーティングシステム」は主となる制御プログラムであるカーネルと、多数のユーティリティより構成される。カーネルは、プログラムの開始や停止、ファイルシステムの取り扱い、他の多くのプログラムが共用する共通的な「低レベル」のタスク、そして重要なスケジューリングなどのサービスを提供する。これらのアクセスを調停するために、カーネルはシステムへの特権を持ち、システムは「ユーザー領域」と「カーネル領域」に分けられる。
カーネルの肥大化の潮流を逆転させ、より少ないユーティリティで最大のタスクを実行できるシステムに戻る目的で、マイクロカーネルのコンセプトが登場した。またコンピュータが1つのハードディスクと入出力用の端末から構成されていた時代には、Unixのファイルモデル(ストリーミングデータ)は最適な入出力として働いた。しかし現代のシステムではネットワークや新しい装置が求められ、グラフィカルユーザインタフェースが開発され、ファイルモデルはマウスなどが発生させる非同期イベントの取り扱いのタスクには不適当と判明し、1980年代には非同期入出力やIPCのメカニズムに加えて、ソケット、共有メモリ、メッセージキュー、セマフォなどが追加された。また通信プロトコルなどの機能はカーネルの外に移動した。
Unixは現在では、サーバーやパーソナルコンピュータの一部に加え、携帯電話などの組み込みシステムから、メインフレームやスーパーコンピュータなどの一部にも使われている。
歴史
1960年代
1960年代、マサチューセッツ工科大学、ゼネラル・エレクトリック(GE) 及び、当時AT&Tグループに属していたベル研究所により、GE-645上で動作することを目的としたOSである Multics (Multiplexed Information and Computing System) の開発がなされた[7]。Multicsは様々な技術革新をもたらしたが、多くの問題も抱えていた。
Multicsは意図したわけではないが、巨大で複雑なものとなり、ベル研究所はプロジェクトから徐々に距離を置くようになっていった。Multicsプロジェクトに最も遅くまで関わったベル研究所の研究員として、ケン・トンプソン、デニス・リッチー、M・D・マキルロイ、J・F・オサンナらがおり[8]、彼らはOS開発をもっと小規模に再開させることを決めた。当時についてリッチーは「我々が守りたかったのは、プログラミングのためのよい環境だけでなく、仲間意識を生み出すシステムだった。遠隔アクセスとタイムシェア型のマシンで提供される共同社会的コンピューティングの本質は、単にプログラムの入力手段がキーパンチから端末になったというだけでなく、仲間同士のコミュニケーションを促進するということは経験からわかっていた」と述べている[8]。
一方ケン・トンプソンはMultics開発に携わりながら、その上でファイルとページングの新たなシステムのシミュレーションプログラムを書いた。また、Space Travel というゲームもMultics上で開発した。しかしこのゲームはGE-645上で動作させるにはコストが高く、実際に性能もあまり良くなかった。そして彼はベル研究所であまり使われていないDEC社製のシステムであるPDP-7を発見[9]。このPDP-7上で、アセンブリ言語を用いてこのゲームを移植し[10]、さらにベル研究所のトンプソンとリッチーを中心とする研究者チームが、階層型ファイルシステム、プロセスとデバイスファイルの概念、コマンドラインインタプリタ、いくつかの小さなユーティリティプログラムを開発した[8]。これがUNIXの始まりである。
1969年に開発された当初のUNIXは、アセンブリ言語で記述されていた。アセンブリ言語で記述されたソフトウェアは、ハードウェアの能力を最大限に生かすことができる。しかし可読性が低く、移植性に欠ける。この当時はOS、特にOSの中核をなすカーネルは、アセンブリ言語だけで記述されることが一般的であった。ハードウェアメーカーがそれぞれ独自のOSを提供していたため、移植性の問題は重要ではなかった。そもそも当時の高級言語には、システム・プログラミングに向いているものがなかったため、アセンブリ言語を使うより他に選択の余地はなかったといえる。
1970年代
1970年、ピーター・ノイマンはこのプロジェクトを Multics からの言葉遊びとして Unics (UNiplexed Information and Computing Service) と名付けた[11]。Unics は結局同時に複数のユーザーをサポートできるようになり、Unix と改称された。Multicsでの失敗に基づき、UNIXの開発はシンプルで独立したモジュール群で構成することを目標としていた。この事は、Multicsのmulti(複)に対してuni(単)という意味がUNIXの名称に込められていることからもわかる。
この時点ではまだベル研究所からの資金的な援助はなかったが、ベル研究所の Computer Science Research Group が、PDP-7より大きいシステムでのUNIXの動作を望んだため、トンプソンとリッチーはテキスト処理能力を持つUNIXをPDP-11/20上で実現することを約束し、ベル研究所から資金的な援助を得ることとなった。そして1970年代最初に、UNIXはPDP-11/20上で動作するようになり、また、テキストエディタであるedと、テキスト出力用ソフトウェアroffがアセンブリ言語で実装された。ベル研究所は、このUNIXとroffとエディタから構成されるテキスト処理システムを特許出願のテキスト処理に使用。roffはその後troffとして発展し、完全な組版機能を備えた世界初の電子出版プログラムとなった。またこれらプログラムを用い、UNIX Programmer's Manual が1971年11月3日に出版された。
1972年前半には、New York Telephone Co. の Systems Development Center にて Dan Gielan の指揮でUNIX初の商用利用が始まった。Operational Support System は Neil Groundwater がアセンブリ言語で開発し、7年間修正されることなく使われ続けた。
デニス・リッチーは、UNIXの移植性を高めるために「C言語」を開発した。この革新的なプログラミング言語は、高級言語でありながら従来よりも機械語に近い処理も可能であったため、システム・プログラミングのための言語として理想的であった。当時「オペレーティングシステムのように複雑でイベントに即座に反応しなければならないものは、アセンブリ言語でなければ書けない」と思われていたが、1972年、UNIXはC言語で書き直された[12]。アセンブリ言語から高水準言語であるCへの移行により、ソフトウェアの移植性が高まり、マシン依存の少量のコードを書き直すだけでUNIXを他のプラットフォームに移植できるようになった。
1956年の独占禁止法違反の訴訟での和解判決合意により、ベル研究所の当時の親会社AT&Tはコンピュータ産業への進出を禁止されていた。そのためUNIXなどのオペレーティングシステムを販売できなかった[13]。実際、和解合意によりベル研究所は電話技術以外のあらゆる研究成果を希望者にライセンス供与することになっていた。ケン・トンプソンは静かにUNIXをソースコードと共にメディアのコピー代だけで希望者に発送しはじめ、伝承によればそれぞれに "Love, Ken" とサインを添えたという[14]。
このような要因から、UNIXはアメリカ合衆国の企業、大学、政府機関で急速に普及した。ライセンス供与された中にはソースコードも含まれており、PDP-11のアセンブリ言語で書かれたマシン依存コードも含まれていた。注釈付きのUNIXカーネルのソースはコピーされて広まり、1970年代後半にはニューサウスウェールズ大学の John Lions が Lions' Commentary on UNIX 6th Edition, with Source Code を出版したことでさらに広まり、格好の教材としてよく採用された。それに伴ってバグの修正がAT&Tに送り返されてきたため[13]、さまざまな改変がUNIXに加えられることとなった。その結果、UNIXにはオープンな文化が育まれ、また、これら創成期に生まれた設計思想、開発手法等はUNIX哲学として発展し、現在のUNIX系OSの開発に多大な影響を与えている。
UNIXシステムのバージョンは、ユーザーマニュアルの版で特定されていた。例えば、"Fifth Edition UNIX" も "UNIX Version 5" も同じバージョンを意味している。ベル研究所のUNIXは順調に発展を遂げ、1975年までにV4、V5、V6がリリースされた。その過程においてパイプ機能が実装され、いっそうのモジュール化がなされている。バージョン5や特にバージョン6には、ベル研究所内外で様々な派生バージョンが生まれた。例えば、PWB/UNIX や初の商用UNIXである IS/1 がある。C言語への書き換えも進み、移植性も高まっていった。ウーロンゴン大学では Interdata 7/32 への移植を行っている。ベル研究所でも研究目的およびAT&T内での使用を目的として、いくつかのプラットフォームへの移植を行っている。例えば、Intel 8086 ベースの(特製のMMUを備えた)コンピュータや UNIVAC 1100 への移植が行われた[15]。
1975年5月、ARPAは RFC 681 の中でUNIXをARPAネットワークのホストとして採用する利点を挙げている。
そのころカリフォルニア大学バークレー校は同校で開発されたUNIX用のPascalコンパイラやエディタなどの配布活動を行っていた。これが、BSD (Berkeley Software Distribution) の始まりである。BSDでは、ITSをモデルにしたテンプレート:仮リンク機能を備えた C Shell などが生まれた。
1978年、DECの新たなVAXシステム向けにUNIX/32Vがリリースされた。それまでにUNIXは600台以上のシステムで稼動していたとされる。1979年、Research Unix の最新バージョン Version 7 Unix が広くリリースされた。1980年代には、Version 8, 9, 10 が開発されたが、ごく一部の大学への配布に留まり、それらの成果は論文で公表されている。この流れは Plan 9 from Bell Labs の開発につながった。
1980年代
1980年ごろ、DECのスーパーミニコンVAX-11のリリースにより、ミニコンは32ビットの時代に突入した。LISPやリレーショナルデータベースなど大規模アプリケーションのため32ビット仮想記憶対応のUNIXが求められていたが、AT&Tから提供された UNIX 32V はV7を32ビット対応にしただけのもので仮想記憶機能を持っていなかった。そこで、カリフォルニア大学バークレー校ではV7と32Vをベースに仮想記憶機能の追加を行い、バークレー版のUNIX「BSD」を開発した。これによりBSDはUNIXオペレーティングシステムそのものを含む大規模なものとなった。
1982年、AT&Tは主に Version 7 をベースとした初の商用版である UNIX System III をリリースした。これにはVAXサポートも含まれている。この時点では以前のバージョンのライセンス供与も継続している。そしてAT&T内部で様々なバージョンが使われている混乱状態を解消するため、すべてをまとめた UNIX System V Release 1 を開発。これにはカリフォルニア大学バークレー校が開発したUnixである Berkeley Software Distribution から、エディタのviや curses など少数の機能が導入されている。またウェスタン・エレクトリックが開発したコンピュータ3Bシリーズのサポートも含まれている。
1983年、アメリカ合衆国司法省はAT&Tの2度目の独占禁止法違反の訴訟をAT&Tの解体で決着させた。1984年1月1日をもって地域系部門が分離、独立されることとなるが、一方で、AT&Tは通信業務以外の分野への参入が認められた。それにより、1956年の和解判決で禁じられていたコンピュータ産業への参入が可能となり、UNIXを製品化することが可能となった。これに伴い、AT&TはUNIXを用いたライセンスビジネスを開始し、UNIXをライセンス許可なしで使用することを禁止した[16]。UNIXのライセンスを受けた会社は、UNIXに様々な機能追加を施し、自社の商品として独自UNIXを搭載した機器を売り出した。これらの機器に搭載されたUNIXにはソースコードが付属していなかったことや、ライセンスが大変厳しかったことから、UNIXを自由に改変したり、またその改変した機能を公開できなくなった。その結果Unixは一時期閉じた世界のものとなり、Unix文化は絶滅寸前となった[14]。同年(1983年)、リチャード・ストールマンがGNUプロジェクトを創始している。
新たな商用UNIXライセンスは従来のUnixのように学術利用に寛大なものではなかったので、カリフォルニア大学バークレー校の研究者らは System III や System V の代替として使える BSD の開発を続けた。さらに同校はDARPAよりUnixにTCP/IPネットワーキング機能を追加する研究プロジェクトを受託し、BSD Unix は、TCP/IPネットワーク機能を持つことになった。特にTCP/IPが BSD Unix に標準採用されたことは、インターネットの創成期の発展に大きく寄与した。
BSD UNIXはAT&Tから公式に配布許可を得たUNIXのバリエーションであり、入手のためにはまずAT&T UNIXのソースライセンスを得た上でバークレー校とのあいだでライセンス契約を結ぶ必要があった。当時はUNIXのライセンス費が教育機関向けには非常に安く、また同校のライセンス費も実費程度であったので BSD Unix は広く普及した。BSDベースの商用UNIXも登場したが、これはAT&Tからバイナリ再配布ライセンスを得て販売されていたのであり、ソースコードは付属しておらず、カーネル再構成用にリロケータブルオブジェクトファイル(.oファイル)が添付されていた。なお、BSD開発の中心となったのが、後にサン・マイクロシステムズの設立メンバーとなるビル・ジョイである。BSDライセンスの許容的性質からBSDのコードは商用製品にも取り入れられ、AT&Tの System V や初期の Microsoft Windows でBSDのTCP/IPのコードが使われた。それに伴うソケットAPIはネットワークAPIのデファクトスタンダードとなった。
多くの企業が自社製ミニコンピュータやワークステーションに商用UNIXを提供しはじめた。商用UNIXは、BSD発祥のものと、AT&Tからライセンス供与を受けた System V ベースのものがある。サン・マイクロシステムズは1982年、BSDの主要開発者だったビル・ジョイが創業した企業で、自社製ワークステーション用に SunOS を開発した。マイクロソフトは1980年、16ビットミニコンピュータ用のUnixであるXENIXを発表。1983年、SCO(後のタランテラ)が Intel 8086 にXENIXを移植し、1989年にはそれを SCO UNIX とした。
そのころ(PC/AT互換機とMS-DOSが隆盛を迎える前)、業界の評論家はUNIXがその移植性と豊かな機能によってマイクロコンピュータの業界標準となることを予想していた[17]。1984年、いくつかの企業がUNIXに基づくオープン規格を策定すべく X/Open を創設。当初はうまくいっていたが、標準化はいわゆる「UNIX戦争」が勃発したことで頓挫し、様々な企業がグループを形成してそれぞれ独自に標準化を行う事態となった。Unix関連で最もうまくいった標準化はIEEEのPOSIXであり、BSDと System V のAPIを折衷したものである。これは1988年に発表され、間もなくアメリカ合衆国連邦政府の各種システムの調達条件とされた。
AT&Tは、UNIX System V に、ファイルロック、システム管理、STREAMS、新たなIPC、Remote File System、TLIといった機能を追加していった。1987年から1989年まで、AT&Tとサン・マイクロシステムズは共同で、XENIX、BSD、SunOS、System V の機能を統合する System V Release 4 (SVR4) を開発した。この統合は X/Open とは独立して行われている。これによって従来の各種Unixの機能が統合されたが、同時にライセンス料も増大した。
1990年代
1990年、Open Software Foundation (OSF) がUnixの標準実装として、MachとBSDに基づいたOSF/1をリリース。この団体は1988年、いくつかの企業がAT&Tとサンの協業に対抗して組織したものである。これに対抗してAT&Tとそのライセンスを受けている企業グループは UNIX International (UI) を組織した。両者の対立が激化すると、再び「UNIX戦争」と言われるようになった。
バークレーでは1986年の4.3BSDの出荷後、AT&T由来のソースコードの分別と除去を推し進め、AT&T UNIX由来ではないソースコードを無償公開した。これが1989年の Network Release 1 (NET/1) や1991年のNET/2である。特にNET/2ではカーネルのソースのほぼ全てが含まれており、欠落した数個のファイルを開発することにより動作するカーネルを作ることができた。
1991年、ウィリアム・ジョリッツを中心とするBSD研究者らがカリフォルニア大学を離れ、Berkeley Software Design, Inc (BSDi) を創業。BSDiは BSD Unix を安価で遍在するインテルプラットフォーム上に実装した商用OS BSD/386 を開発。これによって安価なコンピュータを業務に利用する潮流が生まれた。ジョリッツは創業直後にBSDiを離れ、386BSDの配布に専念するようになった。386BSDは、FreeBSD、OpenBSD、NetBSD といったフリーなOSの源流となっている。しかしUNIXのソースコード、特許等のライセンスを管理してきたAT&Tは、BSDに対して快く思わなかった。特に、BSDiがNET/2を商用化してソースコードを販売したことがきっかけとなり、USL(当時UNIXの権利を保有していたAT&Tの子会社)はBSDi及び、BSDを開発したカルフォルニア大学バークレー校に対し、BSDによるAT&Tが保有する特許及び、著作権の侵害に対して訴訟を起こす。この訴訟の和解の結果、1994年には、NET/2の公開を取りやめることとなったが、4.4BSDからAT&TのUNIXに依存した部分を取り除いた4.4BSD-Liteを同校が公開できることになった。しかし、裁判の間BSD系のオペレーティングシステムは急激に開発のスピードが落ちたとされる。
最後に出荷されたBSDは4.4BSD encumberd(フリーではない)と、そのフリーなソースコードだけを抜き出して作られた4.4BSD-Lite2である。こうしてAT&Tとのライセンス問題を回避したBSDは後に述べるオープンソースUnixへとつながっていく。
1991年、リーナス・トーバルズがLinuxの開発を開始。当初はPC/AT互換機で動作するUnixクローンだった。
1993年までに、商用ベンダーの多くは System V をベースとしてBSDの各種機能を追加するという形に落ち着いた。同年、Common Open Software Environment (COSE) が主要ベンダーが参加する形で創設され、UNIX戦争が終結を迎え、UIとOSFも1994年に合併した。合併後の組織はOSFを名乗り、OSF/1 の開発はやめることになった。当時OSF/1を本格的に採用していたのはDECだけであり、DECは独自に開発を継続して1995年にはブランド名をOSF/1から Digital UNIX に変更した。
UNIX System V Release 4 が完成すると間もなく、AT&TはUNIXの権利をノベルに売却した。デニス・リッチーはこの取引を、エサウが目先の利益のために大事な権利を売ってしまったという聖書のエピソードにたとえた[18]。ノベルはこれを基にNetWareとSVR4を統合したUnixWareを開発し、マイクロソフトのWindows NTに対抗しようとした。
1993年、ノベルはX/OpenコンソーシアムへUNIXの商標と認証権を売却することを決めた[19]。1996年、X/OpenとOSFが合併し、The Open Group が生まれた。特に1998年の Single UNIX Specification 策定以降、The Open Group の各種標準は何がUNIXで何がUNIXでないかを定義するものとなっている。
1995年、既存のUNIXライセンスを管理サポートする事業と今後の System V のコードベースを開発する権利がノベルから旧SCOに売却された[20]。なお、ノベルがUNIXの著作権も売却したかどうかは裁判で争われている(後述)。
1997年、アップルはMacintoshの新たなOSのベースとなるものを捜し、NeXTが開発したNEXTSTEPを選択した。このOSの中核部はBSDとMachカーネルに基づいており、アップルはそれを取得後 Darwin と名付けた。Darwin から生まれたのが Mac OS X であり、USENIXでアップル社員はデスクトップパソコン市場で最も広く使われているUnix系OSだと述べている。
2000年代
2000年、旧SCOはUNIX事業と資産を全てカルデラに売却。カルデラがその後SCOと称するようになった。
インターネット・バブル(2001年 - 2003年)が崩壊すると、商用Unixの淘汰が進んだ。Solaris、HP-UX、AIX といった1980年代に生まれた商用Unixだけが生き延び、健闘したシリコングラフィックスのIRIXもLinuxに取って代わられた。中でも2005年の時点で最大のシェアを誇っていたのがSolarisである[21]。
2003年、SCOはLinuxにはSCOが保有するUNIXの著作権を侵害している部分があると主張し、Linuxのユーザーやベンダーを法的に訴え始めた。IBMはSCOとの協業で得た企業秘密をLinuxに応用したとして訴えられ、旧SCOの顧客でLinuxに乗り換えた者は契約違反で訴えられた。これに対してノベルはUNIXのソースコードの著作権はノベルが依然として保持していると反論。ノベルによれば、著作権はノベルが保持しており、SCOは単にライセンス認証業務を委託されていたにすぎず、その業務を停止させる権利もノベルが保有しており、ライセンス収入の95%はノベルのものだという。SCOはこれに同意せず、結果として両者は裁判で決着をつけることになった。2007年8月10日、ノベルに有利な判決がなされた(UNIXの著作権はノベルが保有しており、SCOはノベルに渡すべきライセンス料を不正に蓄えているという判決)。判決ではさらに、SCOがIBMとシークエントを訴えている件で、本来の権利者であるノベルが訴えをやめることを希望しているため、SCOはそれに従うべきだとしている。判決後ノベルは、UNIXに関連して人々を訴えるつもりは全くないとし、Linuxの中にUNIXのコードが混じっているとも思わないとした[22][23][24]。2009年8月24日、SCOは第十巡回控訴院でこの判決の一部を覆すことに成功し、裁判の差し戻しが決まった[25][26][27]。
2010年3月30日、差し戻し審でSCOではなくノベルがUNIXおよびUnixWareの著作権を保持していることが満場一致で確認された[28]。SCOは破産管財人エドワード・カーンを通じてIBMとの裁判を継続する決定を明らかにした[29]。
2005年、サン・マイクロシステムズはSolarisのソースコードの大部分をオープンソース化する OpenSolaris プロジェクトを発表。最初にZFSというファイルシステムがオープンソース化された。そこからサン以外によるOpenSolarisのディストリビューションがいくつか生まれている。2010年にオラクルがサンを買収すると、OpenSolarisは公式には中止されたが、派生ディストリビューションの開発は続いている。
標準化
1980年代後半から始まったオペレーティングシステム標準化の動きはPOSIXとなって結実し、あらゆるオペレーティングシステムの共通のベースラインとなっている。IEEEは主要なUnixシステムに共通する構造からPOSIXを作り、1988年に最初のPOSIX標準を公表した。1990年代初め、よく似た標準化が業界団体 Common Open Software Environment (COSE) イニシアティブによって開始され、The Open Group の管理する Single UNIX Specification となった。1998年、POSIXと Single UNIX Specification の共通定義を提供するため、IEEEと The Open Group は Austin Group を立ち上げた。
1999年、互換性を達成するため、いくつかのUnixシステムベンダーはSVR4の Executable and Linkable Format (ELF) をオブジェクトファイルおよび実行ファイルの標準規格とすることに合意した。これによって、同一CPUアーキテクチャでの各種Unixシステムでバイナリ互換性の大部分が確保されることになった。
Unix系オペレーティングシステム(特にLinux)におけるディレクトリ構成の標準としては、Filesystem Hierarchy Standard がある。
コンポーネント
Unixシステムは複数のコンポーネントから成っている。カーネルに加えて、開発環境、ライブラリ群、文書、ソースコードなどが含まれる。Unixは自己完結的ソフトウェアシステムだった。そのため重要な学習ツールとして頭角を現し、幅広い影響を及ぼすことになった。
各種コンポーネントを含めても初期のシステムは大きくはなかった。V7 UNIX の場合、全バイナリと全ソースにマニュアルなどの文書を含めても10MB以下であり、9トラックの磁気テープ一本で事足りた。文書を印刷したものも2巻にまとまっていた。
Unixコンポーネントの名前やファイルシステム上の位置は歴史と共に変化している。それでも V7 の実装は多くの場合初期の正規な構造と見なされている。
- カーネル – /usr/sys 配下にソースコードがあり、以下のようなサブコンポーネントから成る。
- 開発環境 – 初期のUnixには、ソースコードからシステム全体を作りなおせる程度の開発環境が含まれていた。
- cc – C言語コンパイラ(V3 UNIX から)
- as – アセンブラ
- ld – リンカ(リンケージエディタ)
- lib – ライブラリ(/lib または /usr/lib にインストールされる)。libc はC言語のライタイムをサポートするシステムライブラリ。他に数学ライブラリ (libm) などの各種用途のライブラリがある。V7 UNIX では、システムライブラリの一部として標準入出力ライブラリ stdio が初めて導入された。その後機能が追加されるにしたがってライブラリの数も膨大なものになっていった。
- make – ビルドマネージャ(PWB/UNIXから)。
- include – ソフトウェア開発用ヘッダファイル群。標準インタフェースとシステム定数を定義している。
- その他の言語 – V7 UNIX には、FORTRAN 77 コンパイラ、任意精度演算言語(bc、dc)、スクリプト言語awkが含まれており、その後のバージョンでさらに言語処理系が追加されていった。初期のBSDではPascal関連のツール群があり、最近のシステムではGNUコンパイラコレクションがある。
- 他のツール群 – ファイルアーカイバ (ar)、シンボルテーブルを表示するツール (nm)、コンパイラ開発ツール (lex, yacc)、デバッグ用ツールなどがある。
- コマンド – コマンドはUnixにおけるユーザープログラムの総称で、システム管理用(cronなど)、汎用ユーティリティ(grepなど)、テキストフォーマットや組版のパッケージといったアプリケーションに近いものなどが含まれる。
- sh – 「シェル」はプログラム可能なコマンドラインインタプリタであり、ウィンドウシステムが登場する以前はUnixの主たるユーザインタフェースだった。GUIが主流となってからもよく使われている。
- ユーティリティ – cp、ls、grep、find などUnixの中心的ツール群。さらに以下のように分類される。
- システムユーティリティ – テンプレート:仮リンク、fsck などのシステム管理ツール群
- ユーザーユーティリティ – passwd、kill などの環境管理ツール群
- 文書整形 – Unixは当初から文書作成と組版のシステムとして使われてきた。nroff、troff、テンプレート:仮リンク、テンプレート:仮リンク、テンプレート:仮リンク、pic といったコマンドがある。最近のUnixシステムでは、TeXやGhostscriptのパッケージもある。
- グラフィックス – plotサブシステムは単純なベクター描画をデバイスに依存しない形で生成し、デバイス対応のインタプリタが実際の描画を行う。現代のUnixシステムでは標準ウィンドウシステムおよびGUIとしてX11を含んでいることが多く、またOpenGLをサポートしていることも多い。
- 通信 – 初期のUnixシステムにはシステム間通信機能は含まれていなかったが、ユーザー間の通信機能として mail と write があった。V7 UNIX でシステム間通信のためのUUCPが導入され、BSD 4.1c でTCP/IPユーティリティが追加された。
- 文書 – Unix は付随する文書を全てオンラインの機械が読める形で含めた最初のOSである。
影響
Unixシステムは他のオペレーティングシステムに大きな影響を及ぼした。成功の要因は以下の通りである。
- 直接的な対話
- IBMやDECといった大きなベンダーの支配下にならなかった点
- 当初、AT&Tが無料で提供していた点
- 安価なハードウェアで動作する点
- 採用が容易で、他のマシンへの移行が容易
初期の実装では必須とされていたアセンブリ言語ではなく高水準言語で書かれている。先例として Multics や バロース B5000 があるが、このアイデアを一般化したのはUnixである。
当時の他のOSに比べて大幅に単純化したファイルモデルを採用しており、あらゆるファイルを単純なバイト列として扱っている。ファイルシステムの階層にサービスやデバイス(プリンター、端末、ディスクドライブなど)が含まれており、一様なインタフェースを提供しているが、単純なバイトストリームモデルに適さないハードウェア機能にアクセスする場合は、ioctlとモードフラグなどの追加機構を必要とすることがある。なお、Plan 9 ではこのモデルをさらに推し進め、追加機構を不要にしている。
Unixはまた、Multicsで導入された階層型ファイルシステムを一般化させた。当時の主要なOSでもストレージを複数のディレクトリやセクションに分割していたが、その階層レベルは固定で、1レベルということが多かった。いくつかの主要OSもMulticsにならってサブディレクトリを再帰的に追加する機能を備えるようになった。DECのRSX-11Mは "group, user" 型階層を採用し、それがVMSのディレクトリに進化した。CP/Mではボリューム単位であってディレクトリ階層がなかったが、MS-DOS 2.0 以降でサブディレクトリが利用可能となった。HPのMPEにおける group.account 型階層や、IBMの SSP や OS/400 のライブラリシステムもある。それらシステムがまとめられ、より広範囲なPOSIXのファイルシステム仕様となった。
Multicsはまた、コマンドラインインタプリタを通常のユーザーレベルのプログラムとし、追加コマンドを個別のプログラムで提供したが、Unixがその方式を一般化させた。Unixシェルはコマンドの対話的使用にもスクリプト言語としても使える(シェルスクリプト。IBMのJCLのようなジョブ制御専用言語は存在しない)。シェルもOSコマンド群もそれぞれ独立したプログラムなので、ユーザーはシェルを選べるし、自分で書くこともできる。新たなコマンドを追加してもシェルを修正する必要はない。また、Unixの独創的なコマンドライン構文により、パイプでコマンド同士を連結して使用することが可能となった。後のコマンドラインインタプリタの多くはUnixシェルに触発されている。
Unixの根本的な単純化想定は、ほぼあらゆるファイルフォーマットに改行コードで分割されたASCIIテキストを採用した点である。初期のUnixにはバイナリエディタはなく、システムの設定は全てシェルスクリプトというテキストファイルで行われていた。入出力もバイト単位が基本であり、Record-oriented filesystem とは異なる。ほとんどあらゆるものをテキストで表したことでパイプの有効性が高まり、単純で汎用的なツール群を開発するだけで、それらを連結して複雑な処理が可能となった。テキストとバイトに集中したことで、他のシステムよりもスケーラビリティと移植性が遥かに向上した。その後、テキストに基づくインタフェースは様々に応用可能と判明し、印刷言語(PostScriptやODF)やインターネット・プロトコル・スイート上のアプリケーション層のプロトコル(FTP、SMTP、HTTP、SOAP、SIPなど)に採用されている。
Unixは正規表現を一般化させるのにも一役買っており、今では様々な場面で正規表現が見られる。
C言語はUnix以上に広がり、今ではシステムプログラミングやアプリケーションプログラミングで広く使われている。
初期のUnix開発者らは、モジュール性と再利用性の概念をソフトウェア工学に導入する重要な役目を果たし、「ソフトウェアツール」という考え方を生み出すことになった。
Unixは比較的安価なコンピュータにTCP/IPプロトコルをもたらし、それがインターネットの爆発的な広がりに貢献するとともに、他のプラットフォームへのTCP/IP実装の手本となった。これによりネットワークの実装における多数のセキュリティホールが明らかとなった。
当初からUnixがオンライン文書を揃え、ソースコードへのアクセスを可能にしていたことは、プログラマの期待を高めることにつながり、1983年のフリーソフトウェア運動立ち上げに貢献した。
Unixの主要な開発者ら(およびUnix上で開発されたプログラム群)は、ソフトウェア開発の文化的規範を徐々に確立していき、その規範群がUnixのテクノロジー自体と同じくらい重要で有力なものとなっていった。それをUNIX哲学と呼ぶ。
フリーなUnix系OS
UNIXが商用の「閉じた」OSとなっていく中で、現在につながるフリーソフトウェア/オープンソースのムーブメントが勃興し、UNIX同様の操作性と機能を提供するフリーなOSが生み出された。
多くのUNIX系OSがオープンソースで開発されているが、以下に挙げるOSは、ライセンスなどの問題からUNIXとは公称しない。
GNU/Linux
1983年にリチャード・ストールマンはFSF(Free Software Foundation/フリーソフトウェア財団)を設立し、GNU(Gnu's Not Unix) プロジェクトを開始した。このプロジェクトの目的は、再配布自由・改変自由なUNIXクローンのOSを作成することであった。このプロジェクトにより、多くのUNIXシステム上で動作するソフトウェア、例えばEmacsやGCC等が作成され、これらソフトウェアは多くのUNIXシステムで使用されるようになった。しかしながら、OSの中核をなす“Hurd”の完成に手間取った(Hurdは現在も開発中)。
1991年にリーナス・トーバルズがLinuxカーネルを開発した。Linuxカーネルの特徴として、POSIXに準拠するように設計されたこと、GNUプロジェクトによって開発された様々なツールが動作するように作成されたこと、またライセンスにGPLが採用されたこと等が挙げられる。その結果、GNUプロジェクトの開発したソフトウェア等と共に、完全フリーのUNIXクローンとして利用されるようになった。有名な商用ディストリビューションとして、かつて Red Hat Linux が存在し、現在では Red Hat Enterprise Linux や SUSE Linux等がある。
なおLinuxという名称は本来カーネルのみの名称にすぎず、OSとして完成させるための他のシステムの多くはGNUプロジェクトの産物である。そのためFSF側ではOSとしての名称は「GNU/Linux」とすべきだと主張しており、この名称を採用した最も有名かつ完全にフリーなディストリビューションのひとつとして「Debian GNU/Linux」、およびそこから派生した「Ubuntu」などがある。
Linuxカーネルを利用した派生OSにAndroid他がある。
オープンソース系BSD
4.3BSD Network Release 2 (Net/2) に起源を持つのがFreeBSD・NetBSD・OpenBSD・DragonFly BSD・PC-BSDのいわゆるBSD系Unixである。FreeBSDは安定性重視、NetBSDは新機能対応と移植性に優れ、OpenBSDはセキュリティを重視し、DragonFly BSDはマルチCPU構成での高性能という特徴を有し、PC-BSDはカジュアルユーザにおいて簡単に導入して使えることを目指しており、特にFreeBSDはウェブ・ホスティングなどで標準的に使用されている。
USLとの和解以降これらBSD系UNIXはライセンス問題を排除した4.4BSD-Lite2をベースに移行し、いずれもフリーなOSとなっている。
オープンソース系BSDをベースとした商用OSとしてはアップルの「Mac OS X」が知られており、中核部分を「Darwin」としてソース公開している。
2038年問題
テンプレート:Main
Unixでは、システム時刻の値を1970年1月1日の午前0時0分0秒からの秒数で表しており、これをUNIX時間と呼ぶ。この値のデータ型は time_t
で、歴史的に「符号つき long」と定義されている。32ビットのシステムでは、2038年1月19日にこの値が1個の0に31個の1が続く最大値 (0x7FFFFFFF
) となり、1秒後には1個の1と31個の0が続く値 (0x80000000
) となる。するとシステム時刻は、実装によって(符号ビットを無視するか否かによって)1901年または1970年にリセットされる。
1970年より前の時刻をUNIX時間で表すことは滅多にないため、time_t
を符号なし32ビット整数と定義し直すという対策が考えられる。しかし、それでは単に問題を2106年2月7日に遅延させるだけであり、時刻の差を計算するソフトウェアでバグを生じる可能性がある。
この問題に対処しているバージョンもある。例えば、SolarisやLinuxの64ビット版では、time_t
は64ビットとなっており、OS自身も64ビットのアプリケーション群も約2920億年間正しく動作する。64ビット版Solarisで既存の32ビットアプリケーションを動作させることもできるが、その場合は問題が残ったままである。一部ベンダーは標準の time_t
はそのままにして、64ビットの代替データ型とそれを使用するAPIを別途用意している。NetBSDでは、次のメジャーバージョンである 6.x で32ビット版でも time_t
を64ビットに拡張することを決定した。従来の32ビットの time_t
を使用しているアプリケーションは、バイナリ互換性レイヤーを作って対応する。
ARPANET
1975年5月、DARPAは、ARPANETで使用するOSとしてなぜUnixが選ばれたのかを詳細に説明する RFC 681 を文書化している。評価過程も文書化されている。当時のUnixのライセンス料は、教育機関以外には2万ドル、教育機関には150ドルとなっていた。ARPAネットワーク全体でライセンス供与を受けるという提案に対して、ベル研究所はそういった示唆についてオープンだったと記されている。
その中で特に長所とされたのは、以下の点である。
- ローカルな処理ファシリティ
- コンパイラ
- テキストエディタ
- roff
- 効率的なファイルシステムとアクセス制御
- パーティションのマウント機能
- デバイスファイルによる周辺機器の抽象化
- Network Control Program (NCP) が統合されている点
- ネットワークコネクションをスペシャルファイルとして扱え、標準的なI/O用システムコールでアクセスできる点
- プログラム終了時に、オープンしていたファイルが全て自動的にクローズされる点
ブランディング
1993年10月、Unix System V のソースについての権利を保有していたノベルは、登録商標の権利を X/Open(現在の The Open Group)に移管し[19]、1995年にはUNIX関連事業をSCOに売却した[20]。ノベルが実際のソフトウェアの著作権もSCOに売却したのかについては、2006年に裁判となり、最終的にノベルが勝利した。SCO側は控訴したが、2011年8月30日に裁判所が棄却したため、裁判は終結した[30]。
アメリカなどで、登録商標としてのUNIXは The Open Group が保有している。現在、日本における「UNIX」という商標は複数の区分で登録されており、電子計算機関連においてアメリカン テレフォン アンド テレグラム カムパニ―やエックス/オープン・カンパニー・リミテッドの登録もある。
日本では、日本マランツ(現在は合併してディーアンドエムホールディングス)が、電気機器分野でUNIXという名前で先行して商標登録を行なっていたため、UNIXという商標の権利関係がはっきりしていなかったことがあった。このことから、書籍などでの商品名などの登録商標についての断り書き一覧などで「UNIXオペレーティングシステムは,AT&Tのベル研究所が開発し,AT&Tがライセンスしています.」(『Life with UNIX』邦訳版での例)などのように書かれたことがあった。現在も日本マランツは音響機器用に「unix」を使用している。他の国でも同様に分野を限定して同じ商標を別の意味で登録することができ、本棚、インクペン、瓶詰めの膠(にかわ)、おむつ、ヘアドライヤー、食品コンテナなどで登録された例がある[31]。
Single UNIX Specification に完全に準拠していると The Open Group に認められたシステムだけが UNIX を名乗ることができる。そのため認証を受けていないシステムは「Unix系」と呼ばれる。
The Open Group は "UNIX" を特定のOS実装ではなく、OSのクラスを指すものと定義している。すなわち、Single UNIX Specification に準拠していると The Open Group に認められたシステムのみが UNIX 98 や UNIX 03 といった登録商標を付けることを許されており、そのためにベンダーは認証料と毎年のロイヤルティを支払わなければならない[32]。認証を受けたOSとしては、AIX、HP-UX、IRIX、Solaris、Tru64(かつての "Digital UNIX")、A/UX、OS X[33][34]、z/OSの一部などがある。
認証を受けていないシステムを表すため、(また、ジャーゴンファイルのUN*Xの項目によれば、商標であることを標示するための「TM」を避けるために)、「UN*X」のようにグロブ(en:glob (programming))記法を使って表記されることがある。ジャーゴンファイルの記述によれば、法的にはUNIXと書いてもTMを付けることは強制されないのだが、この記法は広く使われてしまっている(ジャーゴンファイル訳本の『ハッカーズ大辞典』初版にある「逆にアスタリスクを使うと権利侵害になるらしい」という記述は誤訳なので注意)。
The Open Group は、商標の普通名称化を防ぐため、UNIX という語には常に「システム」などの語をつけて使って欲しいとしている。
本来の形は "Unix" なのだが、Unix という形もよく使われている。これについてデニス・リッチーは、Association for Computing Machinery (ACM) の開催した第3回OSシンポジウムにUnixの論文を送る際「troffと新たな組版システムを開発したばかりでスモールキャピタルを印字できることに興奮して、それを使ってしまったため」だとしている[35]。当時の多くのOSは大文字のみで名称を記述するのが一般的だったため、多くの人は習慣的に大文字のみで "UNIX" と記述した。
UnixやUnix系の複数のブランドを総称するため、Unixの複数形が時折使われることがある。最も一般的な複数形は Unixes だが、Unixをラテン語の名詞の第3格変化として扱い複数形を Unices する例もよく見られる。古英語的に Unixen とする例はまれだが、ときおり見かける。
主なUNIX系OS
フリーなもの
- BSDおよびBSDの子孫
- 現在主要なものに、FreeBSD、NetBSDがある。いずれも386BSDから生まれた。
- FreeBSD
- BSDの子孫。FreeBSD多くの派生版がある(中には有償のものも含まれる)。
- NetBSD
- BSDの子孫。58以上のアーキテクチャに対応している。
- OpenBSD
- NetBSDから派生したBSDの子孫。
- DragonFly BSD
- FreeBSDから派生したBSDの子孫。ハイブリッドカーネルを採用している。
- Darwin
- アップルがDarwinプロジェクトによってオープンソース化したMac OS Xの中核。FreeBSDのソースコードをベースとし、中核にはMachが使われている。
- GNU/Linux
- Linuxカーネルから派生した、Linuxディストリビューション全般やELIKSテンプレート:Enlinkを言う。中には有償のものも含まれる。Linux Standard Base仕様を元に設計されるため、ほぼPOSIX準拠となる。Linuxカーネルを利用した派生OSにAndroid他がある。
- GNU/Hurd
- GNUプロジェクトの公式OSとして現在開発中である。中核にはMachが使われている。
- Solaris/OpenSolaris
- サン・マイクロシステムズのOS。現在、最新版のSolaris 10が提供されているが、以前の版も最終リリースのものがダウンロード可能である(Solaris 8, Solaris 9)。もともとは有償版しかなかったが、SPARC版が無償化され、ついでx86版も(一度有償に戻ったが)無償化された。また、カーネル等の主要コンポーネントをオープンソース化したOpenSolarisもリリースされ、そこから多くの派生ディストリビューションも生まれている。
- Uzi (オペレーティングシステム)(公式サイト)
- Doug Braunにより書かれたZ80、Z280で動作するUNIX風のOS。現在はメンテナンスされていない。
- Uzix(公式サイト)
- UziをMSX、MS-DOSに移植したもの。
- Minix
- IBM PCでも動作すること目的に開発された教育用UNIX風OS。80386の仮想記憶には対応していなかったため、Linuxが開発されるきっかけとなった事でも有名。なお、当初はフリーではないライセンスでリリースされていたが、2000年にバージョン 2.0.2 が BSDライセンスのもとでリリースされ、フリーな OS となった。
- Haiku OS
- BeOS互換のオープンソースOS。POSIXに準拠するよう開発されている。
フリーではないもの
- AIX
- IBMの、SVR4とBSD4.4をベースとしたUNIX。現在、最新版のAIX 7.1が提供されている。
- ACISテンプレート:Enlink
- IBMが6100RT/PCシリーズ用に提供していた4.2BSDベースのOS。アカデミック分野の顧客にのみ提供された。AT&T UNIXとBSDのライセンスを持つ顧客にはソースコードも提供された。
- AOS
- IBMが6100RT/PCシリーズ用に4.3BSDを移植したもの。アカデミック分野の顧客にのみ提供された。AT&T UNIXとBSDのライセンスを持つ顧客にはソースコードも提供された。
- Domain/OS
- アポロコンピュータが開発したワークステーションに搭載されたUNIXの機能も持つ独自OS。マイクロカーネル上のOS Middlewareとして BSD4.3 と SVR3 を搭載し同時独立動作を可能とした。ヒューレット・パッカード (HP) に買収されたその後は市場から姿を消した。
- Ultrix
- DECが同社のVAXやDECstation向けに出していた4.2BSD/4.3BSDベースのOS。初の64ビット実装を行ったUNIXとしても知られている
- Tru64 UNIX
- DECが開発した、Alphaアーキテクチャのサーバ/ワークステーション用のOS。当初は「OSF/1」と呼ばれ「Digital UNIX」を経て Tru64 UNIX となった。DECの買収とともに、コンパック、ヒューレット・パッカード (HP) へと引き継がれ、現在も販売されている。
- DG/UXテンプレート:Enlink
- DataGeneralのサーバ/ワークステーション用のOS製品の商標。System-V系をベースにしているが、一部BSD系の機能を付加
- HP-UX
- ヒューレット・パッカード (HP) のPA-RISCアーキテクチャによるサーバ/ワークステーション用のOS製品の商標。OSF/1への移行を前提にSVR3系をベースに実装されたが、そのまま発展したOS。HP-UX V10以降はSVR4ベースとなる。2002年リリースのHP-UX 11i v1.6では業界で初めてインテルItaniumプロセッサに対応する商用OSを提供した
- SCO Unixテンプレート:Enlink
- SCOがマイクロソフトから引き継いだXENIXを発展させたIBM PC用のUNIX。一時期はPC用UNIXのトップシェアを誇っていた。
- OS/390, z/OS
- メインフレーム専用OSであるOS/390およびz/OSはPOSIX準拠OSである。通常UNIXと呼ばれないが、標準のUNIX環境(Unix System Services - USS)により、OS/390やz/OSのネイティブアプリケーションとPOSIX準拠アプリケーションを同時稼働できる。
- Mac OS X
- 独自改良のMachマイクロカーネルとFreeBSDのユーザランドによって実現されたOS (Darwin) 上にCarbonなどを実装したMacintosh用OS。なお、2007年10月に出荷されたMac OS X v10.5はThe Open Groupの認証を受けたUNIXである。[36]
- A/UX
- アップルコンピュータが開発した、SVR2ベースのMacintosh用OS。X11やコンソールのほかに、Mac OSによく似たインターフェイスのウィンドウシステムを備えていた。当時のMacintoshはMac OS以外をブートできないため、いったんSystem7が起動する。
- MachTen
- MachマイクロカーネルとFreeBSDをベースとした、Mac OS内で起動するOS。
- BeOS
- BeのワークステーションであるBeBox、またはPowerMac、PC/AT互換機で動作するUNIX互換OS。メディアOSとしてマルチメディアを扱うのに長けた。マイクロカーネルにはMachを使用しているが、ユーザカーネルなどのソースコードはオリジナルUNIXは使用せず、POSIX仕様をベースに新しくフルスクラッチされた。
- BSD/OS
- 初期BSDから分岐し商業プロダクトとなったUNIX。BSDiが開発、後に組込み系でリアルタイム制御に対応したUNIX互換OS「LINX」を開発・販売していたWind Riverがソフトウェア部門ごと買収。当初の名前はBSD/386
- XENIX
- マイクロソフトがSVR2をベースに開発・販売していたIBM PC向けUNIX。仮想メモリをもたない8086とFDで動作するシンプルなシステム。教育用および安価なUNIX環境として高いインストールベースを誇った。1983年、SCOから販売されていたが、マイクロソフトがサーバOS戦略を独自路線(OS/2 → Windows NT)へ切り替えたため、後にSCOへ売却された。
- PANIX
- エー・アイ・ソフトが、SVR4をPC/AT互換機・PC-9800シリーズに移植して発売していたもの
- UnixWare
- USLの純正SVR4がノベルに売却され、ノベルの技術(Netwareのサポートなど)を取り入れられたUNIX。その後SCOへ売却される。
- IRIX
- シリコン・グラフィックス (SGI) のUNIX。GUIに優れる。映像製作分野でのシェアが高い。SVR4.2系
- NeXTSTEP/OPENSTEP
- NeXT ComputerのOS。当初は同社のワークステーション専用のOSで、Machに4.3BSD相当の機能を搭載したものであった。後にPC/AT互換機などで動作するOSとして単体販売もされた。
- COHERENT
- Marc Williams製。UNIXライクなOS。
- UNICOS
- Crayのスーパーコンピュータ用のUNIX。
- RISC/os
- ミップス・コンピュータシステムズのUNIXワークステーション/サーバ専用のUNIX。日本ではクボタコンピュータ(株)が代理店をしていた。
- Σ
- 通産省主導の国策プロジェクトとして開発されたOS。開発当初はBSD系だったが後にSystem V (Release2) 系に路線変更。プロジェクト的には失敗に終わったとされ、また、その後も少なからず他の国策プロジェクトに悪影響を与えたとされる。
- HI-UX
- 日立製作所のワークステーション、サーバで動作する。当初は68000系ワークステーションで稼働したSystem V系独自OSであったが、後にハードウェアアーキテクチャの変更(PA-RISC)に伴い、HP-UXをベースとした製品へ変更となった。
- NEWS-OS
- ソニー製のNEWSワークステーション専用のUNIX。当初は4.2BSDベースであったが、後に4.3BSDベースとなる。終末期にはSVR4.2ベースとなった(NEWS-OS6.x)。
- OA/UX
- シャープ製のOAシリーズ、IXシリーズのオフコン/ワークステーション専用のUNIX。当初はSystemIIIベースであったが、後にSystemVベースとなる。コンソール画面での漢字表示、オンボードの辞書ROMを用いたかな漢変換など独自の日本語化が行われていた。
- UniOS-U/UniOS-B/UniOS-Σ
- オムロンが開発・販売していたLUNAワークステーションのうちMC68030を用いたモデル専用のUNIX。SystemV系、BSD系、Σ準拠の3種類が供給された。MC88000を搭載したLUNA88k-WSのOSはMachマイクロカーネル(ユーザカーネルは4.xBSD)であった。
- EWS-UX(UX/4800)
- 日本電気 (NEC) 製のEWS4800ワークステーション専用のUNIX。SVR3系のCISC版とSVR4(当初は、SVR4.0,後にSVR4.2、4.2MP)系のRISC版が存在する。その後、UP-UXをOSとするUP4800サーバ・シリーズが発売になり、これらが統合されてUX/4800に名前が変更となった。CPUをR10000シリーズ(64ビット)としたモデルの発売に伴い、32ビット版と64ビット版が提供されている。
- PC/UX
- NEC製PC-9800シリーズ(80286ベースのもの)専用のUNIX。SVR2ベース。
- SUPER-UX
- NEC製SXスーパーコンピュータ向けのUNIX。なお、地球シミュレータ向けには、このOSを地球シミュレータ向けに拡張したものが利用されている。
- SX/A
- 富士通製ワークステーションのAシリーズ(A30など)・Σ-Station(Σプロジェクトとは無関係)シリーズ専用のUNIX。純正SVR3をベースに4.2BSDのTCP/IP機能を盛り込まれていた。
- UXP/DS
- 富士通DS/90・GP7000Dシリーズ専用のUNIX、USL純正のSVR4をベースに開発された。
- UXP/M
- 富士通製汎用機(FACOM後継機であるMシリーズ、GS (Gloval Server) シリーズ)で動作するSVR4互換のUNIX。他の富士通汎用機のOS (MSP/VSP) と同様に、VM上で稼動する。
- RTU
- MASSCOMPテンプレート:Enlink製リアルタイムUNIX、世界で初めてUNIXをリアルタイム化したUNIX。SVR3系カーネルをベースに4.2BSDのTCP/IPを利用していた。コンカレント・コンピュータに買収後名前は消えるが、機能性は現在も継承されている。
- CX/UX
- ハリスコンピュータ製NHxxxxシリーズで動作する、SVR3系リアルタイムUNIX。SVR3系カーネルをベースに4.2BSDのTCP/IPを利用していた。コンカレント・コンピュータに買収後名前は消えるが、機能性は現在も継承されている。
- PowerMAX OS
- コンカレント・コンピュータ製PowerHawk、NightHawk、TurboHawkシリーズで動作する。SVR4ES/MP純正カーネル(USLのカーネルベース)にPOSIX1003.1b(リアルタイム)、POSIX1003.1c(POSIXスレッド)の拡張を行い、XPG4の認定も受けている。事実上、最後の商用UNIXにおけるリアルタイムUNIXである。(2011年現在、販売中)
- NCR UNIX
- NCRの発売するUNIX。
UNIX環境を提供するソフトウェア
OSではないが、UNIXに相当する環境を提供するソフトウェア。
- BSD on Windows
- Cygwin
- Interix (Services for UNIX)
- Windows NT系
- Windows NT系はPOSIX準拠のサブシステムをもつ。Windows 2000ではInterixサブシステムを導入することで、UNIX環境を構築することができる。Windows XPおよびWindows Server 2003ではPOSIXサブシステムがServices for UNIXとして別配布である。Windows Server 2003 R2、Windows Vista (Ultimate、Enterprise) およびWindows Server 2008では、Subsystem for Unix-based Applications として、標準搭載されている。
脚注
参考文献
- テンプレート:Cite book
- Ritchie, D.M.; Thompson, K., The UNIX Time-Sharing System (The Bell System Technical Journal, July–August 1978, Vol. 57, No. 6, Part 2)
- テンプレート:Cite web - Unix系オペレーティングシステムの詳細な系図、関係する人物の公式サイトや関連資料へのリンクなど
- テンプレート:Cite web
- テンプレート:Cite web
- Lions, John: Lions' Commentary on the Sixth Edition UNIX Operating System with Source Code, Peer-to-Peer Communications, 1996; ISBN 1-57398-013-7
関連文献
- 書籍
- Salus, Peter H.: A Quarter Century of UNIX, Addison Wesley, 1 June 1994; ISBN 0-201-54777-5
- 映像
関連項目
外部リンク
- The UNIX System, at The Open Group.
- The Evolution of the Unix Time-sharing System
- The Creation of the UNIX Operating System
- The Unix Tree: files from historic releases
- テンプレート:Dmoz
- The Unix 1st Edition Manuals.
- The UNIX System - 1982年のUNIXに関する映画。デニス・リッチー、ケン・トンプソン、ブライアン・カーニハン、アルフレッド・エイホらが出演している。
- A History of UNIX before Berkeley: UNIX Evolution: 1975-1984
テンプレート:Unixコマンド テンプレート:Unix-like
テンプレート:オペレーティングシステム- ↑ 英語の発音は「U」にアクセントを置くので、「ユーニクス」に近い発音となる。『ジャーゴンファイル』でも「U」にアクセントを置いて発音するとしている(→Eric S. Raymond (ed.) (2004年10月4日). “Unix”. The Jargon File, version 4.4.7. 2010年12月15日閲覧)。しかし日本人のアクセントは異なることがある(「ニ」にアクセント)。
- ↑ What is a "Unix-like" operating system? Unix.org FAQ
- ↑ テンプレート:Cite web
- ↑ テンプレート:Cite web
- ↑ テンプレート:Cite web
- ↑ テンプレート:Cite book
- ↑ テンプレート:Cite book
- ↑ 8.0 8.1 8.2 テンプレート:Cite web
- ↑ テンプレート:Cite web
- ↑ D.Ritchie. Space Travel: Exploring the solar system and the PDP-7
- ↑ テンプレート:Cite book
- ↑ Stallings, William. "Operating Systems: Internals and Design Principles" 5th ed, page 91. Pearson Education, Inc. 2005.
- ↑ 13.0 13.1 テンプレート:Harvnb
- ↑ 14.0 14.1 テンプレート:Cite web
- ↑ テンプレート:Cite web
- ↑ テンプレート:Harvnb
- ↑ テンプレート:Cite episode
- ↑ テンプレート:Cite web
- ↑ 19.0 19.1 テンプレート:Cite web
- ↑ 20.0 20.1 テンプレート:Cite web
- ↑ テンプレート:Cite web
- ↑ テンプレート:Cite web
- ↑ テンプレート:Cite web
- ↑ Novell Won't Pursue Unix Copyrights 15 August 2007
- ↑ Groklaw.net 24 August 2009
- ↑ Novell.com 24 August 2009
- ↑ Wired.com 24 August 2009
- ↑ テンプレート:Cite web
- ↑ テンプレート:Cite web
- ↑ テンプレート:Cite web
- ↑ テンプレート:Cite web
- ↑ テンプレート:Cite web
- ↑ テンプレート:Cite web
- ↑ テンプレート:Cite web
- ↑ テンプレート:Cite web
- ↑ The Open GroupのMac OS XへのUNIX 03製品認証