オペレーティングシステムを「Unixファミリー」オペレーティングシステムにするには?

オペレーティングシステムを「Unixファミリー」オペレーティングシステムにするには?

私はしばしば多くのウェブサイトで「Unixファミリー」という用語を使用するのを見ます。

標準はありません。ただ働き方が違うだけです。

しかし、カーネルを最初から開発した場合、「UNIXに似た」カーネルと見なされるのはなぜですか?

基本的に、コードをUnixのように書く理由は何ですか?

ベストアンサー1

標準はありません。ただ働き方が違うだけです。

私は、ほとんどの「UNIXファミリー」オペレーティングシステムがそれを遵守するために非常に真剣な努力をしていると信じています。POSIX規格、Open Groupが監督し、このグループも制御します。単一のUNIX仕様これは「本当のUNIX」を定義します。前者が後者の核心である。

実際、実用性を定義する基準があります。UnixシリーズオペレーティングシステムPOSIXのWikipediaの記事の最後にある「完全に」および「ほとんど」互換性のあるオペレーティングシステムのリストを参照してください。

いくつかの明白な理由があります。オペレーティングシステム特に、単一のUnix仕様(SUS)を完全に準拠または認証できないと見なすことができますが、これは特定のLinuxシステムがSUSと必ずしも互換性がないためではありません。ウィキペディアの記事では、仕様を次のようにまとめています。

SUSv3には合計3700ページがあり、テーマ別に4つの主要部分に分かれています。

基本定義(XBD)- 仕様に使用される定義および規則のリストと互換性のあるシステムによって提供される必要があるCヘッダーファイルのリスト。合計84個のヘッダファイルが提供されます。

シェルとユーティリティ(XCU)- ユーティリティリストとシェルの説明、sh。合計160のユーティリティが指定されました。

システムインターフェース(XSH)- システムコールまたはライブラリ関数として実装されるさまざまな関数の仕様が含まれています。合計1123のシステムインタフェースが指定されています。

基本原則(XRAT)- 標準の説明です。

標準のユーザーコマンドラインとスクリプトインターフェースは、以前のバージョンのKorn Shellに基づくBourne Shellの拡張であるPOSIX Shellです。

その他のユーザーレベルのプログラム、サービス、ユーティリティには、awk、echo、ed、vi、その他何百ものが含まれます。必須プログラムレベルのサービスには、基本I / O(ファイル、端末、およびネットワーク)サービスが含まれます。

標準にはテストスイートが付属しています。これをPCTSまたはPOSIX認証テストスイートと呼びます。

SUSには、372個の関数と3個のヘッダファイルを指定するCURSES(XCURSES)仕様も含まれています。全体として、SUSv3は1742のインターフェイスを指定します。

これは明らかにLinuxカーネルの一部ではない多くのユーザーゾーンコンポーネント(シェルなど)を意味します。したがって、linux.orgなどには選択の余地はありません。他。カーネルは個別に認証できます。この意味では、カーネルはまったくオペレーティングシステムではありません。もちろん、彼らは特定のシステムを認証するためにカーネルを使用しようとしますが、一般的な展開シナリオでは意味がありません。カーネルとカーネルを維持する人は、ユーザー領域カーネル(GNU)とカーネルを維持する人とは独立しています。オペレーティングシステムのディストリビューション(Debian、Fedoraなど)を実際に組み立てる人です。

私はDebianやFedora自体が認証プロセスに参加できると思いますが(たとえばRedHat Enterpriseが「認証Unix」になる可能性があります)、これが本当に望ましいかどうか疑問に思います。私の考えでは、SUSシステムの主な理由は、そのために作成された(商業規模、非消費者向け)ソフトウェアを実行することです。これは単にLinuxのニッチではありません。そうする人は、OSライセンスごとに数千ドルを支払うでしょう。これは、サポートなどのシステムで実行する追加のソフトウェアに対して、ライセンスごとに数万ドルまたは数十万ドルを支払うためです。一方、Linuxなどのアウトライヤーは、ビジネス目的のための単純なコンプライアンスを超えて設計目標を追求しており、これにはさまざまな例があります。http://en.wikipedia.org/wiki/STREAMS):

STREAMSは単一のUNIX仕様のバージョン1(UNIX 95)および2(UNIX 98)に準拠する必要がありましたが、BSDおよびLinux開発者がSTREAMSの提供を拒否したため、[引用が必要]はバージョン3(UNIX 03のコンプライアンス)です。

SUSとThe Open Groupが!=linux、!=BSDなどであることを強調する興味深い調整です。

おすすめ記事