- Appleの最新OSリリース版は、Open Groupの一覧で公式に検証された最新のUNIX™準拠版だが、皆さんが考えているものとは一致しないかもしれない
- macOSはAT&Tのソースコードを使用していない。"Unix"は、1993年にNovellがBell LabsからUNIXを買収して以降、もはやその意味を持たない
- 参考: OS Xは16年前からすでにUNIX認証を受けている
UNIX™認証が意味すること
- コードとは関係がない。30年以上そうである
- UNIX™認証は現在では「POSIX互換」を意味する
- POSIXは互換性仕様とテストセットであり、正しいツールが正しい場所に存在していなければならない
- IBMのz/OSメインフレームOSもこの一覧に含まれている
Unix系OSの定義
- Unixのように見え、Unixのように動作し、Unix向けに書かれたプログラムを大きな修正なしで移植できなければならない
- macOSの中核はこれに十分合致している。XNUカーネルと、主にBSDコードから派生したユーザー空間を使用している
- XNUはMachカーネルをベースとしており、BSDコードに由来する大規模なカーネル内「Unixサーバー」も備えている
- ユーザー空間の大半はオープンソースで、BSD由来である
- GUIレイヤーと見た目を整える可視部分は独占的である
AppleのDarwinプロジェクト
- AppleはかつてDarwinというプロジェクトで、OSの下位レイヤーをスタンドアロン版として提供していた
- OpenDarwin、PureDarwinなど、他のFOSS OSの断片を使ってこれを完成させようとした複数のディストリビューションがあった
- NextBSDプロジェクトは逆方向に進み、FreeBSDカーネルを維持しつつ、launchdのようなAppleの上位レベルのコードを利用できるよう改変していた
macOSの進化の過程
- 1996年末、AppleはNeXT Computerの買収を発表し、1997年10月に次世代OSであるRhapsodyのプレビューを公開した
- RhapsodyはNeXTstep 5とほぼ同一だった
- 1999年にはMac OS X Server 1.0となり、これは2000年のMac OS X 1.0へと発展した
- 10.8 Mountain LionからはOS Xへ、10.12 SierraからはmacOSへと簡略化された
- しかし今でも、1988年にSteve Jobsが実演したNeXTstep 0.8と認識できるほど似ているOSである
GN⁺の見解
- macOSがUNIX認証を受けたことには大きな意味はないように見える。ほとんどの人にとって実質的な影響はないだろう
- ただし、macOSの基盤であるDarwinがオープンソースである点は注目に値する。これにより開発者はmacOSの内部動作をよりよく理解できる
- POSIX互換性は今なおOS間の移植性確保に重要な役割を果たすが、最新標準への準拠はもはや優先事項ではないようだ
- NeXTSTEPからmacOSに至る進化の過程を見ると、ユーザーインターフェースと開発者体験の革新がOSの成功にどれほど重要かが分かる
- 結局のところ、UNIX認証そのものよりも、macOSが開発者に優しく、使いやすく、強力なエコシステムを備えていることのほうが重要に見える。ただしUNIX認証には、macOSの堅牢な基盤を示す象徴的な意味はある
1件のコメント
Hacker Newsの意見
poll()を呼び出せるかどうかが重要だselect()とpoll()の両方をサポートしなければならないselect()、他のシステムではpoll()を使わなければならないpoll()に標準化できれば望ましいpoll()システムコールはデバイスをサポートしていないpoll()およびppoll()関数がさまざまなデバイスをサポートする必要があるxdg-openとopen、systemdとlaunchd、sed -iとsed -i ''の違いがあるpipe2の実装をAppleが進めてくれることを望む