UNIX
出典: フリー百科事典『ウィキペディア(Wikipedia)』
UNIX® (or ユニックス) は、マルチタスク、マルチユーザ機能を有するオペレーティングシステムの一種、またはこれから派生した一連のOSの総称。
目次 |
[編集] 概説
主に企業や教育機関における研究で、または安定性や高い情報セキュリティが要求されるサーバを提供する目的で使われる。
ミニコンやワークステーション用のOSとして広く採用され、メインフレームの一部やスーパーコンピュータにも用いられている。1990年代のIntel80386発売以降、Linux、FreeBSDなどの『PC-UNIX』の公開によって最近では個人レベルで使用されることも多くなった。
現役のOSとしては比較的長い歴史を持ち、優れたパフォーマンス、堅牢性を持つ。
UNIXの中核を成すカーネルは大部分がC言語で記述されている。その結果、異なるプラットフォームに対する移植性が高いこと、また、可読性が高いため、機能の改変を行なうことが比較的容易なことで知られている。
[編集] 歴史
[編集] UNIX黎明期
[編集] Multicsの失敗
1960年代に、マサチューセッツ工科大学、ゼネラル・エレクトリック(GE)社及び、当時AT&Tグループに属していたベル研究所により、GE-645上で動作することを目的としたオペレーティングシステム、Multics (Multiplexed Information and Computing System) の開発がなされた。しかしMulticsは製品版として完成したが、巨大で複雑になりすぎたためにパフォーマンスが大変悪かった。その結果、AT&TはMultics開発プロジェクトから撤退することになった。
[編集] UNIXの開発始まる
一方、ベル研究所の研究員であり、Multics開発プロジェクトの一員であったケン・トンプソンは、Multics開発に携わりながら、GE-645上で動作するSpace Travelというゲームを開発していた。しかしこのゲームはGE-645上で動作させるにはコストが高く、実際にパフォーマンスもあまり良くなかった。
そのためケン・トンプソンは、同じベル研究所に所属していたデニス・リッチーの力を借りて、ベル研究所ですでに使用されなくなっていたDEC社製のシステムPDP-7上にアセンブリ言語を用いてこのゲームを移植した。
このゲームの移植の経験とMulticsの開発経験が結びつき、ケン・トンプソンは新しいオペレーティングシステムの開発プロジェクトを開始する。このプロジェクトの名前はUNICS (Uniplexed Information and Computing System) であり、後に、UNIXプロジェクトと改称された。Multicsでの失敗に基づき、UNIXの開発はシンプルで独立したモジュール群で構成することを目標としていた。この事は、Multicsのmulti(複)に対してuni(単)という意味がUNIXの名称に込められていることからもわかる。
この時点ではまだベル研究所からの資金的な援助はなかったが、ベル研究所のComputer Science Research GroupがPDP-7より大きいシステムでのUNIXの動作を望んだため、ケン・トンプソンとデニス・リッチーはテキスト出力能力を持つUNIXをPDP-11/20上で実現することを約束し、これらのプロジェクトはベル研究所から資金的な援助を得ることとなった。
[編集] UNIX完成
そして1970年代最初にUNIXオペレーティングシステムはPDP-11/20上で動作するようになり、また、テキストエディタedと、テキスト出力用ソフトウェアroffがアセンブリ言語で実装された。roffはその後troffとして発展し、またこれらプログラムを用い、The UNIX Programmer's Manualが1971年3月に出版された。
現在ではオペレーティングシステムの多くがC言語で記述されることが多いが、この当時はオペレーティングシステム、特にオペレーティングシステムの中核をなすカーネルはアセンブリ言語でかかれることが一般的であった。しかしアセンブリ言語は可読性、移植性等が欠けているため、1973年にはUNIXはC言語に移植された。
[編集] UNIXの普及と展開
ベル研究所の当時の親会社AT&Tは、独占禁止法によりコンピュータ産業への進出を禁止されていた。このため、UNIXはソースコードと共にメディアのコピー代だけで配付された。このような要因から、UNIXはアメリカ国内の企業、大学、政府機関で急速に普及し、またさまざまな改変がUNIXに加えられることとなった。その結果、UNIXにはオープンな文化が育まれ、また、これら創生期に生まれた設計思想、開発手法等はUNIX哲学として発展し、現在のUNIX系オペレーティングシステムの開発に多大な影響をあたえている。
その後、ベル研究所のUNIXは順調に発展を遂げ、1975年に至るまでにV4、V5、V6がリリースされた。その過程においてパイプ機能が実装され、いっそうのモジュール化がなされている。1978年には、UNIXは600台以上のシステムで稼動していたとされる。
1980年代の始め、AT&Tにアメリカ合衆国の独占禁止法が適用され、地域系部門が分離、独立されることとなるが、一方で、AT&Tは通信業務以外の分野への参入が認められた。これに伴い、AT&TはUNIXを用いたライセンスビジネスを開始し、UNIXのライセンスを受けた会社は、UNIXに様々な機能追加を施し、自社の商品として独自UNIXを搭載した機器を売り出した。これらの機器に搭載されたUNIXにはソースコードが付属していなかったことや、ライセンスが大変厳しかったことから、UNIXを自由に改変したり、またその改変した機能を公開できなくなった。その結果、UNIXは一時期、閉じた世界のものとなったとされる。
[編集] BSD系UNIX
カリフォルニア大学バークレー校は同校で開発されたUNIX用のPASCALコンパイラやエディタなどの配布活動を行っていた。これが、BSD UNIX(Berkeley Software Distribution)の始まりである。
1980年ごろ、DECのスーパーミニコンVAX-11のリリースにより、ミニコンは32ビットの時代に突入した。LISPやリレーショナルデータベースなど大規模アプリケーションのため32ビット仮想記憶対応のUNIXが求められていたが、AT&Tから提供された UNIX 32VはV7を32ビット対応にしただけのもので仮想記憶機能を持っていなかった。そこで、カリフォルニア大学バークレー校ではV7と32Vをベースに仮想記憶機能の追加を行い、バークレー版のUNIXを開発した。これによりBSDはUNIXオペレーティングシステムそのものを含む大規模なものとなった。 さらに同校は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開発の中心となったのが、後にSUNの設立メンバーとなるビル・ジョイである。その後、1995年まで同校のCSRG(Computer Systems Research Group)でBSD版UNIXの開発が続けられた。4.3BSDの出荷後、CSRGではAT&T由来のソースコードの分別と除去を推し進め、AT&T UNIX由来ではないソースコードを無償公開した。これがNetwork Release 1(NET/1)やNET/2である。特にNET/2ではカーネルのソースのほぼ全てが含まれており、欠落した数個のファイルを開発することにより動作するカーネルを作ることができた。 しかしUNIXのソースコード、特許等のライセンスを管理してきたAT&Tは、BSDに対して快く思わなかった。特に、BSDi社がNET/2を商用化してソースコードを販売したことがきっかけとなり、USL(当時UNIXを保有していたAT&Tの子会社)はBSDi社及び、BSDを開発したカルフォルニアバークレイ校に対し、BSDによるAT&Tが保有する特許及び、著作権の侵害に対して訴訟を起こす。この訴訟の和解の結果、1994年には、NET/2の公開を取りやめることととなったが、4.4BSDからAT&TUNIXに依存した部分を取り除いた4.4BSD-Liteを同校が公開できることになった。しかし、裁判の間BSD系のオペレーティングシステムは急激に開発のスピードが落ちたとされる。
最後に出荷されたBSDは4.4BSD encumberd(フリーではない)と、そのフリーなソースコードだけを抜き出して作られた4.4BSD-Lite2である。こうしてAT&Tとのライセンス問題を回避したBSDは後に述べるオープンソースUNIXへとつながっていく。
[編集] V7系UNIX
商用UNIXには、V7→32V→4.xBSD→SunOS(Sun)という流れと、V7(→32V)→System-III→System-V(AT&T)という流れがある。なお、System-IVは開発に失敗して出荷されなかった。その後、AT&TとSunによって、BSD系の機能を追加した統合UNIXが System-V Release4(SVR4)として開発された。
その後、AT&TはSVR4をノベル社に売却した。なお、ノベル社はこれを基礎にUNIXwareを開発し、マイクロソフト社のWindows NTに対抗しようとした。
1994年にノベル社はUNIXの標準規格を確立するために設立されたX/OpenコンソーシアムへUNIXの商標を売却した。その後、X/OpenコンソーシアムとはOSF/1(SVR4との競合規格)は統一化され、この規格の管理を目的としてOpen Groupが設立された。
V7系UNIXの系譜はUNIX V8につながる。UNIX V8は一般に公開されることはなく、ベル研究所内で研究用途にのみ使われた。
ベル研究所ではUNIXを開発した同じチームによって、UNIXの思想を受け継ぎ、分散環境上におけるUNIXの問題点を解消したPlan 9が作られ、2004年現在も開発が続けられている。なお、Plan9は組込み向けに再構成されインフェルノ(Inferno)として通信機器に使われている。
[編集] オープンソース系UNIX
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は2006年現在も開発中)。
1991年にリーナス・トーバルズがLinuxのカーネルを開発した。Linuxカーネルの特徴として、POSIXに準拠するように設計されたこと、GNUプロジェクトによって開発された様々なツールが動作するように作成されたこと、またライセンスにGPLが採用されたこと等が挙げられる。その結果、GNUプロジェクトの開発したソフトウェア等と共に、完全フリーのUNIXクローンとして利用されるようになった。有名なディストリビューションとしてRed Hat LinuxやTurbo Linux等がある。
なおLinuxという名称は本来カーネルのみの名称にすぎず、OSとして完成させるための他のシステムの多くはGNUプロジェクトの産物である。そのためFSF側ではOSとしての名称は「GNU/Linux」とすべきだと主張しており、この名称を採用した最も有名なディストリビューションのひとつとして「Debian GNU/Linux」がある。
[編集] オープンソース系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となっている。
[編集] UNIXの商標
UNIXの商標とソースコードの権利はAT&Tから子会社のUSL(Unix Systems Laboratory)、Novelなどの間で転売が繰り返された。現在ではUNIXのソースコードはSCOが持っている。登録商標としてのUNIXはThe Open groupが保有している。
日本では、日本マランツ(現在は合併してディーアンドエムホールディングス)が、電気機器分野でUNIXという名前で先行して商標登録を行なっていた。そのため、日本ではOSの商標として使えない時があった。現在は音響機器用に「unix」を日本マランツが利用している。電子計算機関連の「unix」という商標は複数の区分で登録されており、アメリカン テレフォン アンド テレグラム カムパニ―やエックス/オープン・カンパニー・リミテッドが保有している。
[編集] UNIXの定義
現実には、UNIXは以下に示す四種類の条件をひとつでも満たすOSを指す言葉として使われている。
- UNIXの商標を管理する団体The Open Groupより、同団体が定義したUNIXの定義(Single UNIX Specification)を満たすことの認証を受けたOS。
- ベル研究所で開発されたオリジナルのUNIX及び、オリジナルのUNIXの派生OSとしてベルの認可を得た過去のOS。
- オリジナルのUNIXを起源にもつOS。
- POSIXなどのUNIXに関連する規格をみたす、UNIX互換なOS。
しかしながら現在、UNIXの公式な定義は、1のみである。アメリカや日本を含む多くの国においては、UNIXはThe Open Groupの登録商標であり、1を満たすOSのみがUNIXを名乗ることができる。かつてAT&TがUNIXという言葉の使用に細かい制限をかけたために、Un*xなどといったよびかえがされることもある。Linuxは4のみに当てはまるが、規格を満たしたことを正式に認定されたわけではない。
[編集] 主なUNIX系OS
[編集] フリーなもの
- 386BSD
- FreeBSD
- NetBSD
- OpenBSD
- DragonFly BSD
- Darwin
- GNU/Linux
- GNU/Hurd
- Solaris
- Sun Microsystems, Inc. のOS。現在、最新版のSolaris 10が提供されているが、以前の版も最終リリースのものがダウンロード可能である(Solaris 8, Solaris 9)。もともとは有償版しかなかったが、SPARC版が無償化され、ついでx86も(一度有償に戻ったが)無償化された。また、カーネル等の主要コンポーネントをオープンソース化したOpenSolarisもリリースされている。
- Uzi
- Uzix
- LUnix
- ELKS
- Minix
- The-PCでも動作すること目的に開発された教育用UNIX風OS。i386の仮想記憶には対応していなかったため、Linuxが開発されるきっかけとなった事でも有名。なお、当初はフリーではないライセンスでリリースされていたが、2000年にバージョン 2.0.2 が BSDライセンスのもとでリリースされ、フリーな OS となった。
[編集] フリーではないもの
- Domain/OS
- Apollo Computer社が開発したワークステーションに搭載されたUNIX。HP社に買収されたその後は市場から姿を消した。
- Ultrix
- DECが同社のVAXやDECstation向けに出していた4.2BSD/4.3BSDベースのOS。初の64bit実装を行ったUNIXとしても知られている
- Tru64 UNIX
- DECが開発した、Alphaアーキテクチャのサーバ/ワークステーション用のOS。当初は「OSF/1」と呼ばれていた。DECの買収とともに、Compaq社、Hewlett-Packard社(HP)へと引き継がれ、現在も販売されている。
- DG/UX
- DataGeneral社のサーバ/ワークステーション用のOS製品の商標。System-V系をベースにしているが、一部BSD系の機能を付加
- HP-UX
- Hewlett-Packard社(HP)のPA-RISCアーキテクチャによるサーバ/ワークステーション用のOS製品の商標。OSF/1への移行を前提にSVR3系をベースに実装されたが、そのまま発展したOS。HP-UX V10以降はSVR4ベースとなる。2002年リリースのHP-UX 11i v1.6では業界で初めてインテルItaniumプロセッサに対応する商用OSを提供した
- SCO Unix
- SCO社がマイクロソフトから引き継いだXENIXを発展させたThe-PC用のUNIX。一時期はPC用UNIXのトップシェアを誇っていた。
- Windows NT
- Windows NTはPOSIX準拠のUnixOSであるが、あまりこの事実は知られていない。Windows2000 以降はInterixサブシステムを導入することで、Unix環境を構築することができる。
- Mac OS X
- 独自改良のMachマイクロカーネルとFreeBSDのユーザランドによって実現されたOS(Darwin)上にCarbonなどを実装したMacintosh用OS。上記の定義のうち3と4が当てはまる。なお、2007年に出荷が予定されているMac OS X Server v10.5はThe Open Groupの認証を受けたUNIXである。
- A/UX
- Apple社が開発した、SVR2ベースのMacintosh用OS。X11やコンソールのほかに、Mac OSによく似たインターフェイスのウィンドウシステムを備えていた。当時のMacintoshはMac OS以外をブートできないため、いったんSystem7が起動する。
- MachTen
- MachマイクロカーネルとFreeBSDをベースとした、Mac OS内で起動するOS。
- BSD/OS
- 初期BSDから分岐し商業プロダクトとなったUNIX。BSDi社が開発、後に組込み系でリアルタイム制御に対応したUNIX互換OS「LINX」を開発・販売していたWind River社がソフトウェア部門ごと買収。当初の名前はBSD/386
- XENIX
- マイクロソフトがSVR2をベースに開発・販売していたThe-PC向けUNIX。仮想メモリをもたない8086とFDで動作するシンプルなシステム。教育用および安価なUNIX環境として高いインストールベースを誇った。1983年、SCOから販売されていたが、マイクロソフトがサーバOS戦略を独自路線(OS/2 → Windows NT)へ切り替えたため、後にSCOへ売却された。
- PANIX
- エー・アイ・ソフトが、SVR4をPC/AT互換機・PC-9800シリーズに移植して発売していたもの
- UnixWare
- USLの純正SVR4がNovell社に売却され、Novell社の技術(Netwareのサポートなど)を取り入れられたUNIX。その後SCO社へ売却される。
- AIX
- IBM社の、SVR4とBSD4.4をベースとしたUNIX。大型汎用機からWSまでのスケーラビリティを持つ
- IRIX
- シリコン・グラフィックス社(SGI)のUNIX。GUIに優れる。映像製作分野でのシェアが高い。SVR4.2系
- NeXTSTEP/OPENSTEP
- NEXT Computer社のOS。当初は同社のワークステーション専用のOSで、Machに4.3BSD相当の機能を搭載したものであった。後にAT互換機などで動作するOSとして単体販売もされた。
- COHERENT
- Marc Williams社製。UNIXライクなOS。
- CONSENSYS
- ESIX
- UNICOS
- Cray社のスーパーコンピュータ用のUNIX。
- INTERACTIVE UNIX
- RISC/os
- MIPS computer Systems社のUNIXワークステーション/サーバ専用のUNIX。日本ではクボタコンピュータ(株)が代理店をしていた。
- Σ
- 通産省主導の国策プロジェクトとして開発されたOS。開発当初はBSD系だったが後にSystemV(Release2)系に路線変更。プロジェクト的には失敗に終わったとされ、また、その後も少なからず他の国策プロジェクトに悪影響を与えたとされる。
- HI-UX
- 日立ブランドで供給されるHP-UX。
- NEWS-OS
- SONY社製のNEWSワークステーション専用のUNIX。当初は4.3BSDベースであったが、後にSVR4.2ベースとなる。
- OA/UX
- SHARP社製のOAシリーズ、IXシリーズのワークステーション専用のUNIX。当初はSystemIIIベースであったが、後にSystemVベースとなる。コンソール画面での漢字表示、オンボードの辞書ROMを用いたかな漢変換など独自の日本語化が行われていた。
- UniOS-U/UniOS-B/UniOS-Σ
- OMRON社が開発・販売していた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-9801(Intel 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社製リアルタイム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(スレッド)の拡張を行い、XPG4の認定も受けている。事実上、最後の商用UNIXにおけるリアルタイムUNIXである。(2005現在、販売中)
- NCR UNIX
- NCR社の発売するUNIX。
[編集] UNIX環境を提供するソフトウェア
OSではないが、UNIXに相当する環境を提供するソフトウェア。
- BSD on Windows
- Cygwin
- Interix (Services for UNIX)
[編集] 関連項目
カテゴリ: UNIX | オペレーティングシステム