web-dev-qa-db-ja.com

macOSはUnixディストリビューションですか?

macOSはUNIXオペレーティングシステム であることは知っていますが、macOSがUNIXと呼ばれるかどうかはわかりませんdistribution同じように、GentooまたはDebianはGNU/Linuxディストリビューションです。

MacOSはUNIXディストリビューションですか?そうでない場合、UNIXオペレーティングシステムファミリにおけるmacOSのメンバーシップと Single UNIX Specification への準拠を正しく参照するにはどうすればよいですか(つまり、Unixバリアント、aUnixバージョン、aUnixフレーバーなど)?また、この質問はSolaris、HP-UX、およびその他のユニックスに適用されます(それらはすべてUNIXディストリビューションですか?)。

さらに、Word「配布」はGNU(/ Linux、/ Hurd、/ kFreeBSD、/ etc)オペレーティングシステムに制限されていますか、それとも他の場合に使用できますか?

編集:NIXの公式ウェブサイト "UNIX実装" を使用していることに気付きましたそして "UNIXオペレーティングシステム" Unixオペレーティングシステムのファミリ、つまり単一のUnix標準を実装するものを指す。

20
Seninha

UNIXとは何ですか?

短い答え:UNIXは現在の仕様/標準です。

執筆時点で 公式ソース を引用すると、「UNIX®はThe Open Groupの登録商標です」、多くの中でとりわけ提供している会社 NIX認証

「The Open Groupが所有および管理するオープンスタンダードであるUNIX®は、主要なテクノロジーを実現し、総所有コストの削減、ITの俊敏性、安定性、および相互運用性の向上を異種環境で実現し、世界中のビジネスと市場のイノベーションを実現します。 」

同じページには、UNIXを定義する仕様が具体的に記載されています。

認定標準の最新バージョンはUNIX V7で、Single UNIX Specification Version 4、2013 Editionに準拠しています。

これらの仕様の詳細は here にあります。不思議なことに、最新の標準 彼らのウェブサイトにリストされている はUNIX 03であり、別の source を引用すると、「UNIX®03-バージョン3のシングルUNIXに準拠するシステムのマーク仕様"。

会社概要ページを自分の強調した太字で引用するには:

UNIXアプローチの成功は、多くの「類似」オペレーティングシステムにつながり、多くの場合、互換性と相互運用性は異なります。これに対処するために、ベンダーとユーザーは1980年代に共同でPOSIX®標準を作成し、後にSingle UNIX Specification を作成しました。

つまり、これが示唆すること(または少なくとも私の解釈では)は、OSがPOSIX標準およびシングルUNIX仕様に準拠している場合、Unixと動作で互換性があるということです。かつて歴史上のある時点で存在していたOS。これは元のUnixソースコードの痕跡の存在について/言及しておらず、カーネルについてもまったく触れていないことに注意してください(これは後で重要になります)。

RitchieとThompsonによって開発されたAT&TおよびSystem V Unixについては、今日では存在しなくなったと言えます。上記の情報源に基づくと、UNIXは現在、特定のOSではなく、 NIXファミリのオペレーティングシステム の動作の可能な限りの一般化から導出された標準であるようです。


macOS Xは* nixの世界のどこに位置していますか?

非常に具体的な定義では、 Intelベースのハードウェア上のmacOSバージョン10.13 High Sierra はUNIX 03標準に準拠しており、 pdf証明書 を引用すると、「Apple Inc. X/Open Company Limitedとの商標使用許諾契約を締結しました。」補足:インテル以外のハードウェアでのmacOS 10.13がどのように扱われるかは疑問ですが、ハードウェアが他のOSで言及されていることを考えると、ハードウェアは重要です。例:「Hewlett Packard Enterprise:HP-9000サーバー上のHP-UX 11i V3リリースB.11.31以降(Precision Architectureを搭載)」( register page から)。

私の回答の前のセクションに戻りましょう。この特定のバージョンのOSは相互運用性と互換性の標準に準拠しているため、OSの動作とシステムの実装は、オペレーティングシステムと同じように、元のUnixにできるだけ近くなっています。少なくとも、行動と環境は近いです。システムレベルとカーネルレベルに近づくほど、その領域はより具体的でより細かくなりますが、UNIXに存在していた少なくとも基本的なメカニズムと動作は、互換性を目的とするOSに存在するはずです。 macOS Xはその目的に非常に近いはずです。


ディストリビューションとは何ですか?

引用するには Wikipedia

Linuxディストリビューション(多くの場合、ディストリビューションと略されます)は、Linuxカーネルと、多くの場合、パッケージ管理システムに基づくソフトウェアコレクションから作成されたオペレーティングシステムです。

LinuxカーネルのようなLinuxは、配布可能なソフトウェアであるか、少なくとも GPL v2 に従って変更されていることを覚えておいてください。パッケージマネージャーとカーネルを考えると、ディストリビューションであるUbuntuとRed Hatは理にかなっています。 macOS Xは元のAT&T Unixとは異なるカーネルを備えているため、macOS XをUnixディストリビューションと呼んでも意味がありません。人々はmacOS XカーネルはFreeBSDに基づいていると示唆していますが、引用すると FreeBSD Wiki

OS Xで使用されるXNUカーネルには、FreeBSD(の古いバージョン)からのいくつかのサブシステムが含まれていますが、ほとんどが独立した実装です

誤ってOS Xカーネルをダーウィンと呼ぶ人もいます。 Appleの Kernel Programming Guide を引用すると:

カーネルは、OS Xの他のコアパーツと共に、まとめてDarwinと呼ばれます。ダーウィンは、OS Xの基礎となる同じテクノロジーの多くに基づく完全なオペレーティングシステムです。

そして同じページを引用するには:

Darwinテクノロジーは、BSD、Mach 3.0、およびAppleテクノロジーに基づいています。

上記のすべてに基づいて、OS XはLinuxディストリビューションの意味で、ディストリビューションではありません。同様に、言及されている他のOSはPOSIXに準拠しており、認定されたUnixシステムですが、カーネルや基盤となるシステムコールのバリエーションが異なります(そのため、Solarisシステムプログラミングに関する本があり、それ自体が価値のある主題です)。したがって、これらはLinuxディストリビューションという意味でのディストリビューションではありません。ユーティリティのバリエーションを持つ共通のコアです。 Linuxの場合、特定のディストリビューションにはシステム固有のものがないため、ディストリビューションに固有のシステムプログラミングではなく、LinuxシステムプログラミングまたはLinuxカーネルプログラミングに関する書籍が表示されます。

ここに表示される内容の確認は、公式ドキュメントで確認できます。たとえば、UNIX OSの種類とLinuxディストリビューションの状態の違いに対処する developerWorks by IBM に関する記事(強調を追加):

今日知られている最新のUNIXバリアントのほとんどは、元のUNIXエディションの1つであるライセンス版です。 SunのSolaris、Hewlett-PackardのHP-UX、IBMのAIX®はすべて、UNIXのフレーバーであり、独自の要素と基盤を持っています。

言い換えれば、それらは同じ基盤に基づいてベースですが、Linuxディストリビューションがカーネルを共有しているという意味では、まったく同じものを共有していません。

考慮事項

Worddistributionは、Linuxカーネルをコアとするオペレーティングシステムを参照するときに主に使用されるようです。オペレーティングシステムのBSDタイプを例にとると、カーネルに基づいており、 FreeBSD のユーティリティの一部を使用する GhostBSD がありますが、 BSDディストリビューションと呼ばれます。すべてのBSD OSはそれが基づいているものについてのみ言及しており、通常はオペレーティングシステム自体がOSとして言及されています。確かに、BSDはBerkeley Software Distributionの略ですが、それだけです。

異なるBSDバージョンが同じカーネルを使用しているかどうかの質問への回答として この回答 を引用するには:

いいえ、歴史的なフォークのために類似点はありますが。各プロジェクトは個別に進化しました。

Linuxディストリビューションの意味で、ではないディストリビューションです。 このドキュメント からの著作権表示を検討してください:

この製品の一部は、UNIX®およびBerkeley 4.3 BSDシステムから派生している場合があります

ノート

  • 前述のPOSIX規格は IEEE規格 とも呼ばれます(IEEEは、IT系のものを処理する研究所です)。
  • 引用するには Wikipedia :「2016年、macOS 10.12 Sierraのリリースに伴い、名前がOS XからmacOSに変更され、Appleの他の主要なオペレーティングシステムのブランド化により合理化されました:iOS、watchOS、およびtvOS。[56]」
  • Mac OS X履歴回答
  • LinuxとBSDカーネルの概念的な違い

結論として:

  • macOS Xは、元のAT&T Unixに関連付けたい場合、UnixライクなOS、Unixライクなシステム、Unix実装、POSIX準拠OSと呼ばれます。
  • macOS Xは元のAT&T Unixと大きく異なるため、「Unixバージョン」は適切な用語ではありません。前述のように、ソフトウェアの意味でのUnixはなくなり、現在は業界標準となっています。
  • おそらく「ディストリビューション」という言葉はLinuxの世界にしか当てはまりません。
  • 本当の問題は、あなた(読者)と私が、弁護士が議論すべきトピックについて議論するのに時間がかかりすぎることです。たぶん、私たちはLinux Torvaldsのようになり、人生を前進し、正直に気にし、気にすべきことを実行できるようにする用語とOSを使用する必要があります。
32

Q: macOSはUnixディストリビューションですか?そうでない場合、どのようにしてUnixオペレーティングシステムファミリでのmacOSの存在を正しく参照できますか(つまり、これはUnixバリアント、Unixバージョン、Unixフレーバーなど)?また、この質問はSolaris、HP-UX、およびその他のユニックスに適用されます(それらはすべてUNIXディストリビューションですか?)。

画像ソース: https://developer.Apple.com/library/content/documentation/MacOSX/Conceptual/OSX_Technology_Overview/SystemTechnology/SystemTechnology.html

MacOS X

出典: https://en.m.wikipedia.org/wiki/XNU

"[〜#〜] xnu [〜#〜]はコンピュータのオペレーティングシステムですkernel 1996年12月にApple Inc.で開発され、 macOSオペレーティングシステム、およびDarwinオペレーティングシステムの一部として無料のオープンソースソフトウェアとしてリリース。iOS、tvOS、およびwatchOSオペレーティングのカーネルとしても使用されます。システム。[〜#〜] xnu [〜#〜][〜#〜] x [〜#〜]の省略形ですNot = [〜#〜] u [〜#〜] nix。


ソース: https://developer.Apple.com/library/content/documentation/Darwin/Conceptual/KernelProgramming/build/build.html#//Apple_ref/doc/uid/TP30000905-CH221-CIHFEIFI

"最初のカーネルの構築

カーネルを構築する前に、まずソースコードを入手する必要があります。 OS XカーネルのソースコードはDarwin xnプロジェクト http://www.opensource.Apple.com にあります。現在のカーネルバージョンを確認するには、コマンドuname -aを使用します。問題が発生した場合は、darwin-kernelおよびdarwin-developmentメーリングリストのアーカイブで情報を検索してください。それでも問題が解決しない場合は、どちらかのリストで支援を求めてください。リストのアーカイブとサブスクリプション情報は http://www.lists.Apple.com にあります。


ソース: https://developer.Apple.com/library/content/documentation/Porting/Conceptual/PortingUnix/glossary/glossary.html

Cocoa-OS X用の高度なオブジェクト指向開発プラットフォーム。Cocoaは、JavaとObjective-Cの両方にプログラミングインターフェイスを備えたフレームワークのセットです。 OPENSTEP、Appleテクノロジー、Javaの統合に基づいています。

Darwin-OS Xオペレーティングシステムのコアの別名。 Darwinカーネルは、OS Xカーネルに加えて、[〜#〜] bsd [〜#〜][〜#〜] bsd [〜#〜に不可欠なライブラリとコマンドに相当します。 ]コマンドライン環境。 Darwinはオープンソース技術です。

Xcode-Appleのグラフィカル統合開発環境。 OS X Developer Toolsパッケージで無料で入手できます。

[〜#〜] xnu [〜#〜]-OS Xカーネル。頭字語は、X is Not Unixの略です。 XNUは、MachおよびBSDの機能を、OS XのドライバーモデルであるI/Oキットと組み合わせます。


  • アーキテクチャ

ソース: https://en.wikipedia.org/wiki/MacOS#Architecture

「macOSのコアには、XNUカーネルの上に構築されたPOSIX準拠のオペレーティングシステムがあり、コマンドラインインターフェイスから標準のUnix機能を利用できます。Appleは、このソフトウェアファミリをリリースしました。 Darwinという名前の無料のオープンソースオペレーティングシステムDarwinに加えて、Appleは、AquaインターフェースやFinderなどの多数のコンポーネントを階層化しました。 macOSであるGUIベースのオペレーティングシステムを完成させます。」.


Q:配布またはRelease? -ソース: https://en.wikipedia.org/wiki/MacOS#Updating_methods

ソース: https://en.wikipedia.org/wiki/MacOS_High_Sierra

「macOS High Sierra(バージョン10.13)は、macOS、Apple Inc.のMacintoshコンピュータ向けデスクトップオペレーティングシステムの14番目のメジャーreleaseです。macOSSierraの後継であると発表されました2017年6月5日のWWDC 2017で。」 「カーネルタイプ:ハイブリッド(XNU)」。


Q:また、この質問はSolaris、HP-UX、およびその他のユニックスに適用されます(すべてUNIXディストリビューションですか?)。

4
Rob