POSIX、Single UNIX Specification、およびOpen Group Base Specificationの違いは?


回答:


9

重要な「違い」の1つは、XSI(XOPEN)オプショングループです。これは、「Unix」ではない新しいオペレーティングシステムに適用される可能性が低い多くの従来のUnixインターフェイスを指定します。多くの場合、人々は「SUS」を使用してXSIオプションを含む完全な標準を参照し、「POSIX」を使用して基本標準および場合によっては非Unix中心のオプショングループを参照します。

SUSの後続バージョンは、ポータブルアプリケーションの作成にはあまり役に立たず、その代わりにレガシー実装を反映し、より便利ないくつかの部分を基本標準に移行するXSIオプションの部分を徐々に非推奨にしているようです。


XSIは(もしあれば)標準の新しいバージョンでは必須になっています。また、POSIX検証テストスイートの作成者によると、組み込みUNIXプラットフォームのみを検証する場合を除き、XSI準拠は必須です。
気味悪い

1
@schily:引用?
R ..

現在のドキュメントはunistd.h読み取ります。「<unistd.h>ヘッダ実装はXSIのオプションをサポートしている場合のみ、次のシンボリック定数を定義するものと定義されている場合XSI適合性を参照してください、その値は前処理ディレクティブの#ifでの使用に適していなければならない_XOPEN_VERSIONを。 "
R ..


25

今日、POSIXとSUSは基本的に同じものです。SUSにはもう少し含まれます

ここで引用:

1998年から、Austin Groupとして知られる共同作業グループは、Single UNIX Specification Version 3およびPOSIX:2001(正式名:IEEE Std 1003.1-2001)として知られる結合標準の開発を開始しました。2002年1月30日にリリースされました

そして

2008年12月、オースティングループはPOSIX:2008(正式名:IEEE Std 1003.1-2008)として知られる新しいメジャーリビジョンを公開しました。これは、Single UNIX Specification、バージョン4の中核です。


POSIX.1-2008はバージョン4ではなく、標準の問題7です。
気味悪い

@schily 2番目の引用をどこで終わらせるかをひどく選択しましたか?私にとっては、ソースと引用の両方が「バージョン4」をPOSIXではなくSUSに明確に関連付けているようです。
ダニエルベック

「問題7」という用語は、Opengroupに適用されます。参照:pubs.opengroup.org/onlinepubs/9699919799混乱している可能性があります。私はUNIX95がSUSv1であることを推測するので、UNIX98はSUSv2にはPOSIX.1-2001はSUSv3のある、あるとPOSIX.1-2008はSUSv4ある
シリー

@schily右、引用のソースが言及問題7.に進みWikipediaのページを参照してください
ダニエル・ベック

11

Open Group Base Specificationsの上部を見ると、標準識別子IEEE Std 1003.1-2008が表示されます。IEEE Std 1003.1はPOSIX.1として知られているもので、2008年が最新版です。ウィキペディアでPOSIXを見ると、標準には次の3つの部分が含まれていることがわかります。

  • 基本定義、問題7
  • システムインターフェイスとヘッダー、問題7
  • コマンドとユーティリティ、問題7

基本的に、POSIXはIEEEによって開発された標準の名前です。初期バージョンは1988年に行われました。POSIXは、IEEEが商標を所有していないという理由だけで公式にUNIX™ではありません。システム。後に、UNIX™商標を管理するOpen Groupは、Single UNIX Specification version 2またはSUSv2と呼ばれるPOSIXに基づく標準の作成に関与しました。現在、これらの2つの仕様は、オースティングループとして共同で開発されています。最新バージョンはSUSv4です。要約すると、

POSIX:2008 = IEEE標準 1003.1-2008 = SUSv4 = Open Group Specification Issue 7。

また、POSIXとは何ですか?


1
また、ISO / IEC 9945-2009
fpmurphy

ああ、はい、これほど多くの標準を持つことがどれほど素晴らしいか。私は、ISO / IEC 10646とUnicodeの違いを理解するのにまだ苦労しています。これは、互いに厳密に同期された同一の文字セットを表す一方で、2つの異なる標準です。なぜ彼らがうまくやって、完全に同義であると宣言できないのか分かりません。
ペンギン359

1
POSIXとSUSの特定のケースでは、その理由はライセンスと商標に関係しています。POSIXは汎用であり、どのOSでも実装できます。SUSはUNIXを定義する標準です。たとえそれらが同一であっても、* nix。または* nix互換のものにはPOSIXが必要です。UNIXと呼ばれるようにしようとする場合でも、SUSを満たす必要があります。SUSが存在しない場合、少なくともUNIXの商標が弱体化する可能性があります。コーポレートアクションを正当化するのではなく、その立場を推測するだけです。
JMベッカー

現在の標準のIEEEバージョンは、最初の数ページとIEEEバージョンが通常約10 6ヶ月後。
気味悪い
弊社のサイトを使用することにより、あなたは弊社のクッキーポリシーおよびプライバシーポリシーを読み、理解したものとみなされます。
Licensed under cc by-sa 3.0 with attribution required.