APUEから
POSIX.1標準のスーパーセットであるSingleUNIXSpecificationは、
POSIX.1仕様によって提供される機能を拡張する追加のインターフェースを
指定します。 POSIX.1は、SingleUNIXSpecificationのBase
Specifications部分に相当します。POSIX.1のX/Open System Interfaces(XSI)オプションは、
オプションのインターフェースを記述し、実装がXSIに準拠していると見なされるために
POSIX.1のどのオプション部分をサポートする必要があるかを定義します。これらには、ファイル同期、スレッドスタック
アドレスとサイズの属性、スレッドプロセス共有同期
、および
_XOPEN_UNIXシンボリック定数(図2.5で「SUS必須」とマークされている)が含まれます。 UNIXシステムと呼ぶことができるのはXSI準拠の実装のみです。
SUSが正確にPOSIXとXSIで構成されているというのは正しいですか?
Linux(またはUbuntu、特にDebian)がPOSIXに準拠しているのは正しいですか?
Linux(またはUbuntu、特にDebian)はXSIに準拠していると見なされますか、それともおおむねそうですか?
XSIのラベルが付いたAPUEの部分がLinux(またはUbuntu、特にDebian)に適用されるかどうかがわかるので、これを尋ねます。
私は主にAPIに興味がありますが、それはLinuxカーネルで十分という意味ですか?
承認された回答:
LinuxはPOSIXに完全には準拠していません。たとえば、動作が異なるシステムコール(申し訳ありませんが、現在、違いが正確に何であるかを覚えていません。もう一度覚えたときに、ここで説明します)。
1つの問題は例えばです。 Linuxには正しいwaitid()
が含まれていません システムコール(exit()
から32ビットすべてを配信します パラメータ)とLinuxカーネルの人々はこれを修正するのが好きではありません。 (waitid()
AT&T System Vリリース4以降に存在しています。)
XSI
の一部 機能はLinuxに実装されていますが、すべてではありません。
bash
(Linuxディストリビューション用にコンパイルされる方法)例: XSI
以外の場合 準拠したecho
組み込み、dash
multi byte chars
をサポートしていません これはXSI
で必要です 。これは、Linuxが1ドルの支援認証を取得するという申し出を受け取った後、POSIXが採用されてしばらくしてから発生しました。
正しい概要を知りたい場合は、Linuxの人々がOpengroupにもう来ることに興味がないと言った後に書かれた、AndrewJoseyによるLinuxのPOSIX非準拠の最終論文をネットで検索することをお勧めします。 POSIX準拠。
参照:http://www.opengroup.org/personal/ajosey/tr20-08-2005.txt
ところで:Red Hatが最近POSIXテストスイートのコピーを受け取ったという噂があるので、隠された継続的な認証があるかもしれません…
関連:find -exec呼び出しでユーザー定義関数を実行しますか?