한국   대만   중국   일본 
UNIX - Wikipedia コンテンツにスキップ

UNIX

出典: フリ?百科事典『ウィキペディア(Wikipedia)』
Unix
UNIXおよび Unix系 システムの系統?
開?者 ケン?トンプソン , デニス?リッチ? , ブライアン?カ?ニハン , ダグラス?マキルロイ , ジョ??オサンナ 英語版 ベル?究所
OSの系統 Unix
開??況 開???中
ソ?スモデル ?史的にはある時期から クロ?ズドソ?ス となったが、近年のUnix系プロジェクトの一部は オ?プンソ?ス である。
初版 1969年 (55年前)  ( 1969 )
カ?ネル 種別 モノリシック
?定の UI コマンドラインインタフェ?ス & GUI ( X Window System )
ライセンス プロプライエタリ
ウェブサイト opengroup.org/unix
テンプレ?トを表示

UNIX (ユニックス、 Unix 英語?音: [juːniks] [1] )は、 コンピュ?タ 用の マルチタスク ? マルチユ?ザ? オペレ?ティングシステム の一種である。

公式な 商標 は「UNIX」だが、商標以外の意味として「Unix」、または スモ?ルキャピタル を使用して「 Unix 」などとも書かれる。 2007年 に、「UNIX」の商標の所有者である 標準化?? The Open Group は、 Single UNIX Specification を完全に?たすと認?を受けたシステムのみが「UNIX」の商標を得られるとした。このためそれ以外のシステムは(ずっと以前から、AT&T版およびBSD以外を指して使われていた用語だが)「Unixシステムライク」または「 Unixライク(Unix系) 」と呼ばれるようになった。ただし The Open Groupはその呼?を?に入っていない [2]

2021年現在では「Unix」という語は、 Unix標準 に準?するオペレ?ティングシステムの??でもある。?にUnixシステムは多?の系統に分かれており、AT&Tの開?停止後も、多?の商用ベンダ?や 非?利組織 などによって 開? が?けられている。現在では多く使われているUnixとしては macOS AIX HP-UX Solaris などがある(いずれも商用)。また認?を受けていない Unix系 としては Linux (派生OSに Android 他)や MINIX BSDの派生 OS( FreeBSD NetBSD OpenBSD DragonFly BSD など)がある [3]

Unixは 1969年 AT&T ベル?究所 にて、 ケン?トンプソン デニス?リッチ? らが開?を開始した [4] 。?初は アセンブリ言語 のみで開?されたが、1973年にほぼ全?を C言語 で書き直した。 1970年代 から 1980年代 の初期にかけて、Unixは大?や?究所などの?育機?で?範?に採用され、特に カリフォルニア大?バ?クレ?校 をオリジナルとする BSD 系統が誕生した。

また Version 7 Unix UNIX System V の特?を持つオペレ?ティングシステムは「?統的なUNIX」(traditional Unix)とも呼ばれる。開?開始から半世紀以上に渡る技術の進?やプロジェクトの?遷により、オリジナルのUNIXのソ?スコ?ドは?に使われなくなったが、現在でも派生OSの開?は?けられており、特にシステムのバックエンドで動くス?パ?コンピュ?タやサ?バ向けの市場では?倒的な存在感を示している。

?? [ 編集 ]

Unix系統の系統?

Unixオペレ?ティングシステムは、 サ?バ ワ?クステ?ション だけでなく、 携?機器 でも?く使われている [5] 。またUnix環境と クライアントサ?バモデル は、個?のコンピュ?タによるコンピュ?タ?理を、 コンピュ?タネットワ?ク で連係されたコンピュ?タ?理に?革し、 インタ?ネット 構築の重要な要素ともなった。

もともとUnixはベル?究所?部の開?プロジェクトであった。1973年のOSに?するシンポジウム以降、このOSはベル?究所外部にも知られるようになる。特に1980年代には、?育機?等でUnixが?がり、ユ?ザ?が自前のツ?ルをその上で作り、それを同僚などと共有する形が定着した [6]

Unixは?初はパイプの?念もなかった。その後の?展の中で、徐?に「パイプ」などが??されていった。1977年には、PDP-11以外のプラットフォ?ムで動作するようになった。その後移植が徐?に進み、Unixが動作するプラットフォ?ムが?えていった。

Multicsで用いられていたコンピュ?タであるGE-645は約2MBのメモリを有していたが、最初にUnixが動作したコンピュ?タである PDP-7 は約16KBのメモリしか有していなかった。このため、Unixの??にあたっては、メモリ上に載せられる機能は制限され、?初Multicsで予定されていた多くの機能を諦めざるをえなかった。また、メモリ上でUnixの カ?ネル が占める領域を除くと、各種の ユ?ティリティ やアプリケ?ションが使えるメモリは?KBしか?っていなかった [7] 。このため、高機能でサイズの大きいアプリケ?ションを動かすことは不可能であり、?機能で小さいアプリケ?ションを作成し、それらを順につないでいく方法をとらざるをえなかった。 このような、簡?なプログラムを コマンドラインインタプリタ パイプ 等を使ってつないでいくという方法は、?一の多機能プログラムで同等機能を??するのとは逆の?想である。これらのコンセプトは UNIX哲? という言葉で表現されることがある。しかしながら、Unixの開?者であるトンプソンやリッチ?は、Unixの開?にあたって何らかの「哲?」や「開?理念」があったとは語っていない。むしろ、理念が先にあったのではなく、メモリ制約等の現?的問題があり、それに適合するために、そのような方法にならざるをえなかったという側面が?い。 また、商用Unixの中には、?一で多機能なアプリケ?ションも見られ、"Unix哲?"が一貫してUnixに?するすべての?係者で共有??現されていたわけでもない。

その後、メモリの低?格化?大容量化によって、Unixは多くの機能を?現することが可能となった。今日のUnixは 移植性 マルチタスク タイムシェアリング 方式による マルチユ?ザ などを重視して設計されている。Unixでは、「オペレ?ティングシステム」は主となる制御プログラムであるカ?ネルと、多?のユ?ティリティより構成される。カ?ネルは、プログラムの開始や停止、 ファイルシステム の取り扱い、他の多くのプログラムが共用する共通的な「低レベル」のタスク、そして重要な スケジュ?リング などのサ?ビスを提供する。これらのアクセスを調停するために、カ?ネルはシステムへの特?を持ち、システムは「ユ?ザ?領域」と「カ?ネル領域」に分けられる。

カ?ネルの肥大化の潮流を逆?させ、より少ないユ?ティリティで最大のタスクを?行できるシステムに?る目的で、 マイクロカ?ネル のコンセプトが登場した。またコンピュ?タが1つの ハ?ドディスク と入出力用の 端末 から構成されていた時代には、Unixのファイルモデル(ストリ?ミングデ?タ)は最適な入出力として?いた。しかし現代のシステムではネットワ?クや新しい?置が求められ、 グラフィカルユ?ザインタフェ?ス が開?され、ファイルモデルは マウス などが?生させる非同期イベントの取り扱いのタスクには不適?と判明し、 1980年代 には 非同期入出力 IPC のメカニズムに加えて、 ソケット 共有メモリ メッセ?ジキュ? セマフォ などが追加された。また 通信プロトコル などの機能はカ?ネルの外に移動した。

Unixは現在では、 サ?バ パ?ソナルコンピュ?タ の一部に加え、 携?電話 などの 組み?みシステム から、 メインフレ?ム ス?パ?コンピュ?タ などの一部にも使われている。

?史 [ 編集 ]


Unixの?史は、1960年代中ごろに、 マサチュ?セッツ工科大? (MIT)、 ベル?究所 General Electric (GE) がGEの メインフレ?ム コンピュ?タ GE-645 用に Multics と呼ばれる タイムシェアリング オペレ?ティングシステムを共同開?していたことにさかのぼる [8] 。Multicsは多くの 革新的技術 を導入したが、同時に、多くの問題を抱えてもいた。Multics の目指すものに?同しても、巨大で複?なものになっていくことに嫌?がさしたベル?究所は、プロジェクトから徐?に距離をおくようになった。

最後までMulticsに??していた ケン?トンプソン 等はファイルシステムを??していたが、設計が行われただけで??されていない段階であった。トンプソン等は、?際にファイルシステムを??してみたいと考えた。この作業は、?時ベル?究所?に使われない?態でおいてあった PDP-7 を借りて行われた。ファイルシステムが完成すると、それを活用するためのユ?ティリティを作成していった。こうして、おおむねOSの機能を有するものができあがった [7]

1969年の夏、トンプソンはこれらを全面的に書き直し、新たなOSを作成した。トンプソンによれば、このOSはマルチプロセスを備えていたが、PDP-7には一台の端末しか接?されていなかったため同時に一人しか利用できなかった。そこでグラフィック表示用のディスプレイを端末として使い、同時に二人が利用できるようにした。このシステムは同僚の?究者達の好評を博し、二台の端末は常に?席であったという [9]

この時点では、OSの開?はベル?究所に認知されたものではなく、彼らの私的な活動であった。?究所からの資金提供はなく、OSには名前も付けられていなかった。できあがったOSはMulticsと比べると小さなOSであった事から、 ブライアン?カ?ニハン によって、MulticsのMulti(多?の)をUni(?一の)に?えてUnicsと名付けられた [7] [10] [11] [12] 。後につづりがUnixと?更された。このつづりの?更の?緯について、カ?ニハンは「思い出せない」と言っているが、?時の開?グル?プ?では比較的年長者であったピ?タ??ノイマンは「法務上の理由であろう」と語っている [12]

PDP-7は?時としても古く、また開?グル?プの所有する計算機でもなかった。このため、開?グル?プでは、?時の最新機種であった PDP-11 を購入し、その上でUnixが動作するようになった。1971年のUnixバ?ジョン1はPDP-11/20上で動作した。バ?ジョン3までのUnixは アセンブリ言語 で開?された。ベル?究所ではその後もUnixの改良が?けられ、パイプなどの機能が追加されていった。1973年に公開されたバ?ジョン4において、Unixは C言語 で書き直された [7] 。リッチ?によれば、この高級言語の使用はコ?ドの書き易さや可?性を念頭に置いたもので、この時点では移植性は重視されていなかった [13] という。1975年に公開されたバ?ジョン6はソ?スコ?ドと共にベル?究所の外部、主に大?に?く配布され、?育??究に使われた。バ?ジョン6の?象機種はPDP-11シリ?ズのみであった。1976年の12月、ウロンゴン大?のリチャ?ド?ミラ?らは Interdata 7/32 への移植を開始した。彼らは1977年の4月にInterdata 7/32上でUnixを動かす事に成功し、7月には大?の正式なシステムとなった [14]

ベル?究所では、Unix上で開?されたアプリケ?ションを他のOSに移植する過程で、OS間の差異がその障壁となる事を認識していた。この解決策として、Unix自?を移植可能にするプロジェクトがスティ?ヴ?ジョンソンらによって1977年初頭に始まり、1978年の春に Interdata 8/32 への移植を完了した [15] 。この移植版自?は公開されなかったが、この時に開?されたソ?スコ?ドチェックツ?ルや新たなCコンパイラは、1979年に公開されたバ?ジョン7と共に配布された。これらの、ベル?究所で開?された初期のUnixは、現在では Research Unix と呼ばれている。

1970年代末から1980年代初頭にかけて、Unixは?術分野だけではなく産業分野でも使われるようになっていき、 HP-UX , SunOS / Solaris , AIX , Xenix 等のOSが作られた。 1980年代の末には、 AT&T Unixシステムズ?ラボラトリ?ズ サン?マイクロシステムズ が共同で UNIX System V Release 4 (SVR4) を開?した。これは、後の多くの商用Unixの母?となった。

1990年代には、 BSD Linux といったUnixあるいはUnix系OSが、コンピュ?タ?ネットワ?クを通じて世界中の開?者の協力を得て開?され、人?を得ることになった。2000年には、 Apple がUnixに基づいて Darwin というコアに基づくMac OS Xを開?した [16]

今日、Unixは サ?バ ワ?クステ?ション モバイル機器 などで?く使われている [17]

標準化 [ 編集 ]

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の中心的ツ?ル群。さらに以下のように分類される。
      • システムユ?ティリティ ? mkfs 英語版 fsck などのシステム管理ツ?ル群
      • ユ?ザ?ユ?ティリティ ? passwd kill などの環境管理ツ?ル群
    • 文書整形 ? Unixは?初から文書作成と組版のシステムとして使われてきた。 nroff troff tbl 英語版 eqn 英語版 refer 英語版 pic といったコマンドがある。最近のUnixシステムでは、 TeX Ghostscript のパッケ?ジもある。
    • グラフィックス ? plot サブシステムは?純なベクタ?描?をデバイスに依存しない形で生成し、デバイス??のインタプリタが?際の描?を行う。現代のUnixシステムでは標準ウィンドウシステムおよび GUI として X11 を含んでいることが多く、また OpenGL をサポ?トしていることも多い。
    • 通信 ? 初期のUnixシステムにはシステム間通信機能は含まれていなかったが、ユ?ザ?間の通信機能として mail write があった。V7 UNIX でシステム間通信のための UUCP が導入され、BSD 4.1c で TCP/IP ユ?ティリティが追加された。
  • 文書 ? Unix は付?する文書を全てオンラインの機械が?める形で含めた最初のOSである。
    • man ? 各コマンド、ライブラリ??、 システムコ?ル ヘッダファイル などのマニュアル。
    • doc ? 主要サブシステムについての長めの文書。C言語やtroffに?するものなどがある。

影響 [ 編集 ]

Unixシステムは他のオペレ?ティングシステムに大きな影響を及ぼした。成功の要因は以下の通りである。

  • 直接的な?話
  • IBMやDECといった大きなベンダ?の支配下にならなかった点
  • ?初、AT&Tが無料で提供していた点
  • 安?なハ?ドウェアで動作する点
  • 採用が容易で、他のマシンへの移行が容易

初期の??では必須とされていた アセンブリ言語 ではなく高水準言語で書かれている。先例として Multics バロ?ス B5000 があるが、このアイデアを一般化したのはUnixである。

?時の他のOSに比べて大幅に?純化したファイルモデルを採用しており、あらゆるファイルを?純なバイト列として扱っている。ファイルシステムの階層にサ?ビスやデバイス( プリンタ? 端末 ディスクドライブ など)が含まれており、一?なインタフェ?スを提供しているが、?純なバイトストリ?ムモデルに適さないハ?ドウェア機能にアクセスする場合は、 ioctl とモ?ドフラグなどの追加機構を必要とすることがある。なお Plan 9 ではこのモデルをさらに推し進め、追加機構を不要にしている。

Unixはまた、Multicsで導入された階層型ファイルシステムを一般化させた。?時の主要なOSでもストレ?ジを複?のディレクトリやセクションに分割していたが、その階層レベルは固定で、1レベルということが多かった。いくつかの主要OSもMulticsにならってサブディレクトリを再?的に追加する機能を備えるようになった。DECの RSX-11 Mは "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年 リチャ?ド?スト?ルマン フリ?ソフトウェア財? (Free Software Foundation; FSF) を設立し、 GNU ( G nu's N ot U nix) プロジェクト を開始した。このプロジェクトの目的は、再配布自由?改?自由な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 」などがある。ただし、そのようなディストリビュ?ションの多くは、FSF の唱えるフリ?ソフトウェアの精神と相容れない仕?を含むものが多いため、FSF からは「不自由」なディストリビュ?ションと見なされている。 [18]

Linuxカ?ネルを利用した派生OSに Android 他がある。

オ?プンソ?ス系BSD [ 編集 ]

4.3BSD Network Release 2 (Net/2) に起源を持つのが FreeBSD ? NetBSD ? OpenBSD ? DragonFly BSD ? TrueOS のいわゆる BSD系 Unixである。FreeBSDは安定性重視、NetBSDは新機能??と移植性に優れ、OpenBSDはセキュリティを重視し、DragonFly BSDはマルチCPU構成での高性能という特?を有し、TrueOSはカジュアルユ?ザにおいて簡?に導入して使えることを目指しており、特にFreeBSDは ウェブ?ホスティング などで標準的に使用されている。

USLとの和解以降これらBSD系UNIXはライセンス問題を排除した4.4BSD-Lite2をベ?スに移行し、いずれもフリ?なOSとなっている。

オ?プンソ?ス系BSDをベ?スとした商用OSとしては Apple の「 macOS 」が知られており、中核部分を「 Darwin 」としてソ?ス公開している。

2038年問題 [ 編集 ]

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ネットワ?ク全?でライセンス供?を受けるという提案に?して、ベル?究所はそういった示唆についてオ?プンだったと記されている。

その中で特に長所とされたのは、以下の点である。

ブランディング [ 編集 ]

1993年10月、Unix System Vのソ?スについての?利を保有していた ノベル は、登? 商標 の?利を X/Open (現在の The Open Group )に移管し [19] 、1995年にはUNIX?連事業を SCO に?却した [20] 。ノベルが?際のソフトウェアの 著作? もSCOに?却したのかについては2006年に裁判となり、最終的にノベルが勝利した。SCO側は控訴したが、2011年8月30日に裁判所が棄却したため、裁判は終結した [21]

アメリカなどで、登?商標としてのUNIXは The Open Group が保有している。現在、日本における「UNIX」という商標は複?の?分で登?されており、電子計算機?連において アメリカン テレフォン アンド テレグラム カムパニ? やエックス/オ?プン?カンパニ??リミテッドの登?もある。

日本では、 日本マランツ (現在は合?して ディ?アンドエムホ?ルディングス )が、電?機器分野でUNIXという名前で先行して商標登?を行なっていたため、UNIXという商標の?利?係がはっきりしていなかったことがあった。このことから、書籍などでの商品名などの登?商標についての?り書き一?などで「UNIXオペレ?ティングシステムは,AT&Tのベル?究所が開?し,AT&Tがライセンスしています.」(『Life with UNIX』邦?版での例)などのように書かれたことがあった。現在も日本マランツは音響機器用に「unix」を使用している。他の?でも同?に分野を限定して同じ商標を別の意味で登?することができ、本棚、インクペン、?詰めの膠(にかわ)、おむつ、ヘアドライヤ?、食品コンテナなどで登?された例がある [22]

Single UNIX Specification に完全に準?しているとThe Open Groupに認められたシステムだけが UNIX を名?ることができる。そのため認?を受けていないシステムは「 Unix系 」と呼ばれる。

The Open Groupは "UNIX" を特定のOS??ではなく、OSのクラスを指すものと定義している。すなわち、Single UNIX Specificationに準?しているとThe Open Groupに認められたシステムのみが UNIX 98 UNIX 03 といった登?商標を付けることを許されており、そのためにベンダ?は認?料と?年のロイヤルティを支?わなければならない [23] 。認?を受けたOSとしては、 AIX HP-UX IRIX Solaris Tru64 (かつての "Digital UNIX")、 A/UX macOS [24] [25] z/OS の一部などがある。

認?を受けていないシステムを表すため、(また、 ジャ?ゴンファイル のUN*Xの項目によれば、商標であることを標示するための「 TM 」を避けるために)、「UN*X」のように グロブ 記法を使って表記されることがある。ジャ?ゴンファイルの記述によれば、法的にはUNIXと書いても TM を付けることは?制されないのだが、この記法は?く使われてしまっている(ジャ?ゴンファイル?本の『ハッカ?ズ大?典』初版にある「逆にアスタリスクを使うと?利侵害になるらしい」という記述は誤?なので注意)。

The Open Groupは 商標の普通名?化 を防ぐため、 UNIX という語には常に「システム」などの語をつけて使って欲しいとしている。

本?の形は "Unix" なのだが、 Unix という形もよく使われている。これについて デニス?リッチ? は、 Association for Computing Machinery (ACM) の開催した第3回OSシンポジウムにUnixの論文を送る際「 troff と新たな組版システムを開?したばかりでスモ?ルキャピタルを印字できることに興奮して、それを使ってしまったため」だとしている [26] 。?時の多くのOSは大文字のみで名?を記述するのが一般的だったため、多くの人は習慣的に大文字のみで "UNIX" と記述した。

UnixやUnix系の複?のブランドを??するため、Unixの複?形が時折使われることがある。最も一般的な複?形は Unixes だが、Unixを ラテン語 の名詞の第3格?化として扱い複?形を Unices とする例もよく見られる。 古英語 的に Unixen とする例はまれだが、ときおり見かける。

主なUnix系OS [ 編集 ]

フリ?なもの [ 編集 ]

Berkeley Software Distribution (BSD) および BSDの子孫
現在主要なものに、 FreeBSD NetBSD がある。いずれも 386BSD から生まれた。
FreeBSD
BSDの子孫 。多くの 派生版 がある(中には有償のものも含まれる)。
Darwin
Apple がDarwinプロジェクトによってオ?プンソ?ス化したmacOSの中核。FreeBSDのソ?スコ?ドをベ?スとし、中核には Mach が使われている。
DragonFly BSD
FreeBSDから派生した BSDの子孫 ハイブリッドカ?ネル を採用している。
NetBSD
BSDの子孫 。58以上のア?キテクチャに??している。
OpenBSD
NetBSDから派生した BSDの子孫
GNU/Linux
Linux カ?ネルから派生した、 Linuxディストリビュ?ション 全般やELIKS  ( en: Embeddable Linux Kernel Subset を言う。中には有償のものも含まれる。Linux Standard Base仕?を元に設計されるため、ほぼ POSIX 準?となる。Linuxカ?ネルを利用した派生OSに Android 他がある。
GNU/Hurd
GNUプロジェクト の公式OSとして現在開?中である。中核には Mach が使われている。
Solaris / OpenSolaris
サン?マイクロシステムズのOS。現在、最新版のSolaris 11が提供されているが、以前の版も最終リリ?スのものがダウンロ?ド可能である( Solaris 8 , Solaris 9 )。もともとは有償版しかなかったが、 SPARC 版が無償化され、ついで x86 版も(一度有償に?ったが)無償化された。また、カ?ネル等の主要コンポ?ネントをオ?プンソ?ス化した OpenSolaris もリリ?スされ、そこから多くの派生ディストリビュ?ションも生まれている。
MINIX
IBM PC でも動作すること目的に開?された?育用Unix系OS。 80386 の?想記憶には??していなかったため、Linuxに?想記憶が??されるきっかけとなった事でも有名 [27] 。なお、?初はフリ?ではないライセンスでリリ?スされていたが、 2000年 にバ?ジョン 2.0.2 が BSDライセンス のもとでリリ?スされ、フリ?なOSとなった。
Haiku
BeOS 互換のオ?プンソ?スOS。 POSIX に準?するよう開?されている。

フリ?ではないもの [ 編集 ]

AIX
IBM の、SVR4とBSD4.4をベ?スとしたUNIX。現在、最新版のAIX 7.2が提供されている。
ACIS 英語版
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
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を提供した
OpenServer
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準?アプリケ?ションを同時稼?できる。
macOS
?自改良の Mach マイクロカ?ネルと FreeBSD のユ?ザランドによって?現されたOS (Darwin) 上に Cocoa , Carbon , Core Foundation などを??した Mac 用OS。なお、2007年10月に出荷された Mac OS X v10.5 以降は、The Open Groupの認?を受けたUNIXである [28] 。また、同じくDarwinを??した派生OSに iOS がある。
A/UX
Apple Computer が開?した、SVR2ベ?スの Macintosh 用OS。X11やコンソ?ルのほかに、Mac OSによく似たインタ?フェイスのウィンドウシステムを備えていた。?時のMacintoshはMac OS以外をブ?トできないため、いったんSystem7が起動する。
MachTen
Machマイクロカ?ネルとFreeBSDをベ?スとした、Mac OS?で起動するOS。
BeOS
Beのワ?クステ?ションであるBeBox、またはPower Mac、 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
富士通 ミニコン FACOM Aシリ?ズ (A30など)? Σ-Station (Σプロジェクトとは無?係)シリ?ズ?用のUNIX。純正SVR3をベ?スに4.2BSDのTCP/IP機能を盛り?まれていた。
SX/G
富士通 ワ?クステ?ション FACOM Gシリ?ズ や後?の FMGシリ?ズ のUNIX。Unix System Vをベ?スにしていた。
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( POSIXスレッド )の?張を行い、XPG4の認定も受けている。事?上、最後の商用UNIXにおけるリアルタイムUNIXである。(2011年現在、販?中)
NCR UNIX
NCR の??するUNIX。

UNIX環境を提供するソフトウェア [ 編集 ]

OSではないが、UNIXに相?する環境を提供するソフトウェア。

脚注 [ 編集 ]

  1. ^ 英語の?音は「U」にアクセントを置くので、「 ユ? ニクス」に近い?音となる。『 ジャ?ゴンファイル 』でも「U」にアクセントを置いて?音するとしている(→Eric S. Raymond (ed.) (2004年10月4日). “ Unix ”. The Jargon File, version 4.4.7 . 2010年12月15日??)。しかし日本人のアクセントは異なることがある(「ニ」にアクセント)。
  2. ^ What is a "Unix-like" operating system? Unix.org FAQ
  3. ^ Operating system market share ”. Marketshare.hitslink.com. 2012年8月22日 ??。
  4. ^ 村井 純、井上 ?司、砂原 秀樹『プロフェッショナルUNIX』アスキ?出版局、1986年1月15日、14-15頁。 ISBN   4-87148-184-0  
  5. ^ 8:30 AM (2010年9月29日). “ Unix's Revenge ”. asymco. 2010年11月9日 ??。
  6. ^ Powers, Shelley; Peek, Jerry; O'Reilly, Tim; Loukides, Mike (2002). Unix Power Tools . ISBN   0-596-00330-7  
  7. ^ a b c d Ritchie, Dennis M. (1984). “The Evolution of the Unix Time-sharing System” . AT&T Bell Laboratories Technical Journal 63 (6 Part 2): 1577?93 . http://www.bell-labs.com/usr/dmr/www/hist.html 2018年9月2日 ??。 .  
  8. ^ Stuart, Brian L. (2009). Principles of operating systems: design & applications . Boston, Massachusetts: Thompson Learning. p. 23. ISBN   1-4188-3769-5  
  9. ^ KEN THOMPSON 9-6-89 ”. www.tuhs.org . 2024年2月2日 ??。
  10. ^ Dolya, Aleksey (2003年7月29日). “ Interview with Brian Kernighan ”. Linux Journal . 2017年10月18日時点の オリジナル よりア?カイブ。 2018年9月2日 ??。
  11. ^ McIlroy, M. D. (1987). A Research Unix reader: annotated excerpts from the Programmer's Manual, 1971?1986 (PDF) (Technical report). CSTR. Bell Labs. 139. 2017年11月11日時点のオリジナルより ア?カイブ (PDF)
  12. ^ a b Rik Farrow. “An Interview with Peter G. Neumann” . ;login: 42 (4): 38 . https://www.usenix.org/system/files/login/issues/login_winter17_issue.pdf . "That then led to Unics (the castrated one-user Multics, so- called due to Brian Kernighan) later becoming UNIX (probably as a result of AT&T lawyers)."  
  13. ^ Dennis M, Ritchie. “ The Development of the C Language ”. www.bell-labs.com. 2024年2月16日 ??。
  14. ^ Miller, Richard. “ The First Unix Port ”. 2024年2月16日 ??。
  15. ^ Portability of C Programs and the UNIX System ”. Bell-labs.com. 2018年8月24日 ??。
  16. ^ Loading ”. Developer.apple.com. 2012年6月5日時点の オリジナル よりア?カイブ。 2012年8月22日 ??。
  17. ^ Unix’s Revenge ”. asymco (2010年9月29日). 2010年11月9日時点の オリジナル よりア?カイブ。 2010年11月9日 ??。
  18. ^ 自由なGNU/Linuxディストリビュ?ション ”. 2020年7月22日 ??。
  19. ^ Chuck Karish   View profile    More options. “ The name UNIX is now the property of X/Open ? comp.std.unix | Google Groups ”. Groups.google.com. 2010年11月9日 ??。
  20. ^ HP, Novell and SCO To Deliver High-Volume UNIX OS With Advanced Network And Enterprise Services ”. Novell.com (1995年9月20日). 2010年11月9日 ??。
  21. ^ Jones, Pamela. “ SCO Files Docketing Statement and We Find Out What Its Appeal Will Be About ”. Groklaw . Groklaw.net. 2011年4月12日 ??。
  22. ^ Autres Unix, autres moeurs (OtherUnix) ”. Cm.bell-labs.com (2000年4月1日). 2010年11月9日 ??。
  23. ^ The Open Group. “ The Open Brand Fee Schedule ”. 2011年12月26日 ??。 “The right to use the UNIX Trademark requires the Licensee to pay to The Open Group an additional annual fee, calculated in accordance with the fee table set out below.”
  24. ^ The Open Group. “ Mac OS X v10.5 Leopard on Intel-based Macintosh computers certification ”. 2007年6月12日 ??。
  25. ^ The Open Group. “ Mac OS X v10.6 Snow Leopard certification ”. 2012年10月16日 ??。
  26. ^ Unix ”. Catb.org. 2010年11月9日 ??。
  27. ^ MOODY 2002 , p. 56.
  28. ^ The Open GroupのOS XへのUNIX 03製品認?
  29. ^ ズバッと解決! Windows 10探偵? ― 第97回 ネイティブで動作するWindows上でLinuxが使えるようになった!(ASCII.jp) ”. KADOKAWA (2016年4月13日). 2016年4月25日 ??。

?考文? [ 編集 ]

  • S.R. Bourne 著、三好 彰, 木下 恂(共?) 編『UNIXシステム』マイクロソフトウェア、1985年。  
  • GLYN MOODY 小山祐司監?『ソ?スコ?ドの反逆』 株式?社アスキ? 、2002年6月11日。  

?連文? [ 編集 ]

書籍
映像
  • Computer Chronicles (1985). " UNIX ".
  • Computer Chronicles (1989). " Unix ".

?連項目 [ 編集 ]

外部リンク [ 編集 ]