Unix系
出典: フリー百科事典『ウィキペディア(Wikipedia)』 (2023/12/26 08:30 UTC 版)
![]() | この記事は検証可能な参考文献や出典が全く示されていないか、不十分です。(2020年12月) |

Unix系(ユニックスけい、Unix-like、ユニックスライク)とは、Unixに類似した振る舞いをするオペレーティングシステム (OS) を指す用語である。その判断基準や範囲には複数の議論がある。
UNIXの商標問題
ベル研究所のUnixの設計や機能を模倣したオペレーティングシステムは多数存在するが(一般にUnixの専門家の間で「ベル研究所のUnix」と言えば、いわゆるResearch Unixを指す。従って、次に述べる商標としてのUNIXの代表格であるSystem Vですら、以上のような表現からは「設計や機能を模倣したオペレーティングシステム」に相当する)、現在、UNIXの名称は、オープン・グループが商標を所有しており、彼らの管理するSingle UNIX Specificationを満たすシステムのみが、その認証の証明として「UNIX」を名乗ることができる。そこで、正式には「UNIX」と呼ぶことができないが、それに類似するオペレーティングシステムを指す言葉として「UNIX系」を用いることがある。
なお、オープン・グループのガイドラインでは、「UNIX」はすべて大文字で記述されるか、あるいは周りの文章と明確に区別され、「system」などの一般的な言葉に対して商標であることを示す言葉として使用し、ハイフンのついた語句として使用しないよう推奨している。これに従えば「unix-like」という表現も適切なものではなく、オープン・グループでは商標の乱用であるとして認めていない。UNIX類似のオペレーティングシステムを指す言葉としてオープン・グループが正しいと考えるのに最も近い言葉は「UNIX system-like」である[1]。
ただし、「ゼロックス」を複写機の一般名称として用いるのと同じように、「UNIX」を商標が普通名称化したものとして扱い、あえて「Unix系」という言葉を用いないこともある。
一般的にはUNIXと類似のオペレーティングシステム全体を指して「Unix系」と表現することもある。
Unix系オペレーティングシステムには、AIX、HP-UX、IRIX、Linux、MINIX、Ultrix、XENIXなどのように、Unixに似た名称がつけられていることが多いため、「Un*x」や「*nix」のように婉曲的な略記法としてワイルドカードをつける人もいる(後者はアスタリスクがワイルドカードに用いられることに引っ掛けて「アスタニクス」と発音される)。こうしたパターンは、それほど多くの名前に当てはまるわけではないのだが、Solaris、FreeBSD、macOSといった全く異なる名前を持つものも含め、一般的にはいかなるUnixの末裔たちも示すと認識されている。これもオープン・グループのガイドラインに反している。
2007 年現在、ウェイン・R・グレイとオープン・グループの間でUNIXの名称を商標として使うことについての法的な闘争が行われている[2]。商標審判部の法廷文書によると、グレイの弁護団はオープン・グループに、商標の主張を裏付ける文書の提出を求めているようである。
また、2007年には、オープン・グループはドイツのカッセル大学に対し大学の略称として「UNIK」を使わないよう強要した[要出典]。
分類
UNIXの元々の製作者の一人であるデニス・リッチーは、LinuxなどのUnix系のシステムがデファクトのUNIXシステムであるという意見を述べている。エリック・レイモンドは、Unix系のシステムには次の3つの種類があるという考えを提案している:
- 「遺伝上」のUNIX
- これらのシステムは、AT&Tのコードベースに歴史的なつながりがある。ほぼすべての商用のUNIXシステムはここに分類される。BSDシステムもその一例であり、1970年代後半から1980年代初頭にかけてのカリフォルニア大学バークレー校における開発成果を受け継いでいる。これらのシステムには元々のAT&Tのコードは入っていないが、その設計はAT&TによるUNIXの設計に起源を持つ。
- 商標やブランド上のUNIX
- これらのシステムは(もともと大部分は商用のものであるが)オープン・グループによってSingle UNIX Specificationに準拠していると判断され、UNIXの名を名乗ることを許されたものである。こうしたのシステムのほとんどはSystem Vコードベースからのさまざまな形態の派生物であり、一部のシステムはPOSIX互換レイヤでUNIX商標をとった(IBMのz/OSなど)が、これらはそうでなければそもそもUnixシステムではない。Ancient UNIXの多くはもはやこの定義に入らない。
- 機能上のUNIX
- 広い意味で、UNIXの仕様に合った振る舞いのUnix系のシステムの事を指し、より具体的には、UNIXと同様に振舞うが、「血統」や商標の上でのAT&TコードベースとのつながりのないLinuxやMINIXのようなシステムのことを示す。しかしながら、「遺伝上」のUnixであろうとなかろうと、UNIX準拠のほとんどのフリーソフトウェア/オープンソース実装は、この第三のカテゴリーに分類される。オープン・グループ仕様への認証を獲得する費用は高額であるがゆえに、認証が不可能だったり、そうでなくても他のもっと有用なことに予算を投じる結果になるためである。
Unix系システムの発展
Unixの歴史も参照。
Unix系システムは 1970年代後半や1980年代初頭に登場し始めた。Idris(1978年)、Coherent(1983年)、UniFlex(1985年)などの多数のプロプライエタリのシステムがUNIXの学術機関のユーザーに利用できる機能をもとにビジネスを行うことを目標としていた。
後に1980年代、AT&TがUNIXの商用ライセンスを許可した時、AIX、HP-UX、IRIX、Solaris、Tru64、Ultrix、XENIXなどの多数のプロプライエタリのシステムが開発された。これらのシステムの間で発生した相互運用性の問題が、後にPOSIXやSingle UNIX Specificationなどの相互運用性の標準を策定することにつながった。
一方、1983年に、GNUプロジェクトが、GNUと呼ばれるいかなるコンピューターのユーザーも自由に使用でき、学習、改変、再配布も自由なオペレーティングシステムを作り上げるという目的で始まった。GNUと同じころ開発された多数のUnix系オペレーティングシステムには、GNUと相当な量のコンポーネントを共有しているものが多かった(結果的に、これらをGNUと呼ぶべきかで論争が起きた)。これらのOSはまず、UNIXの低コストで制約の少ない代替物としての役割を果たした。4.4BSD、Linux、MINIXなどである。BSD/OSやmacOSのように、こうしたシステムの商用のUnix系システムの基となったものもある。特に、Mac OS X v10.5はSingle UNIX Specificationの認証を受けている[3]"UNIX"である。
BSDの変種は、実はUNIXの子孫であり、カリフォルニア大学バークレー校でベル研究所のソースコードを用いて開発されたものである。しかし、BSDのコードはそれ以降進化し続け、すべてAT&Tのコードを置換しようとしている。BSDの変種は(v10.5以降のmacOSを除き)Single UNIX Specification準拠の認証を受けていないため、Unix系と呼ばれる。
現行のシステムの例
オープンソースのUnix系システムのベンダーは、認証のコストが法外に高いとみなされているため、仮に仕様に準拠していても、製品にUNIXのブランドを求めようとしていない。Freenixという用語がこうしたシステムを示すために用いられることがある。例としてGNU、Linux、MINIX、OpenSolaris、Plan 9、BSDとその変種がある。BSDのうち特に有名なものとして、FreeBSD、NetBSD、OpenBSDなどがある。
現在プロプライエタリのUnix系システムは多数あり、AIX、BeOS、HP-UX、IRIX、macOS(10.4 以前)、LynxOS、QNX、SCO OpenServer、Solaris、Tru64(OSF/1 に基づく)、UnixWare、XENIX、VxWorksなどが存在する。オープンソース化の波に乗ったLinuxの爆発的な普及により、何れも1990年代以前と比べるとシェアを大きく減らしている。
出典
- ^ http://www.opengroup.org/tm-guidelines.htm
- ^ TTABVUE. Trademark Trial and Appeal Board Inquiry System
- ^ Apple - Mac OS X Leopard - Technology - UNIX. http://www.apple.com/macosx/technology/unix.html
関連項目
外部リンク
Unix系
出典: フリー百科事典『ウィキペディア(Wikipedia)』 (2022/03/24 10:11 UTC 版)
Unix系では、waitシステムコールがセットするステータスは子プロセスの終了時の各種情報をまとめたビットフィールドで構成されている。子プロセスが正常終了した場合(WIFEXITEDマクロで判定する。他にはシグナル受信で終了させられる場合がある)、SUSではステータスの下位8ビットが子プロセスが設定した終了ステータスを示すことになっている。その値は wait.h に定義されたマクロ WEXITSTATUS で取得することができる。このため、Unix系の終了ステータスの値は0から255まで(8ビット符号なし整数)に限られている(それ以上の値を指定しても親プロセス側が下位8ビットしか受け取れない)。 慣習的に正常終了時はゼロ、異常終了時はゼロ以外を返すのが一般的である。各種エラーコードの意味について規約を定めようとした例もある。例えばGNUは上位ビットを深刻なエラーを示すために予約することを推奨している。BSDではさらに細かく推奨される解釈を文書化している。
※この「Unix系」の解説は、「終了ステータス」の解説の一部です。
「Unix系」を含む「終了ステータス」の記事については、「終了ステータス」の概要を参照ください。
固有名詞の分類
- Unix系のページへのリンク