Darwin
開発者 Apple
プログラミング言語
OSの系統 Unix系[1][2], BSD[3]
開発状況 開発中
ソースモデル 現在はプロプライエタリなコンポーネントを含むオープンソース。かつてはオープンソース。
初版 2000年11月15日 (25年前) (2000-11-15)
最新安定版 24.0.0 / 2024年9月16日 (20か月前) (2024-09-16)
リポジトリ ウィキデータを編集
プラットフォーム サポート中: x86-64, 64ビットARM, 32ビットARM32ビットARMサポートはクローズドソース
過去にサポート: PowerPC (32ビットと64ビット)、IA-32
カーネル種別 ハイブリッドカーネル (XNU)
ライセンス 主にApple Public Source License (APSL)だが、ドライバにクローズドソースソフトウェアも使用[4]
後続品 OpenDarwin、PureDarwinなど多数。
ウェブサイト opensource.apple.com ウィキデータを編集(英語)
サポート状況
サポート中です。
テンプレートを表示

Darwin(ダーウィン)は、Appleが開発するオペレーティングシステム (OS) で、macOSiOSiPadOS、さらにはwatchOStvOSaudioOSbridgeOSvisionOS基礎となる部分でもある。

概要

編集

Darwinはオープンソース及び自由ソフトウェアとして公開されており、他のフリーなUnix系同様に特定のライセンス、Apple Public Source License (APSL) 下で入手、インストール、運用が可能であり、PowerPCベースのMacだけでなく、サポートされているハードウェアドライバの問題からハードウェア構成は限定されるが、Intel Macではないインテル機でも動作する。

しかし、この公開されていたソースコードでは当初Intel Macには対応していなかったためインテル製CPUに移行後はクローズドソースになるのではないかという臆測も流れたが、Intel Mac発売から半年後に対応のソースコードが公開された。

なお、2005年4月にリリースされた Darwin 8.0以降、インストール用CDイメージは公開されていないが、後継プロジェクトPureDarwinのサイトからダウンロードできる。

テクノロジー

編集

Darwinは技術的にはNEXTSTEPからOPENSTEPに続く流れを汲み、Mach 3.0+BSDをベースとするUnix系のオペレーティングシステム(OS)の中核部で、一部の機能は他のBSD系OSからも取り入れている。ほぼPOSIX互換だが、Darwin自体はPOSIXのどのバージョンにも準拠認定されたことはない。Leopard以降、macOSはSingle UNIX Specification version 3 (SUSv3)準拠の認定を受けている[5][6][7]

カーネルXNU[8]と呼ばれ、Machを採用してはいるものの、macOSを動作させる場合には複数のサーバを組み込む必要はない。またパフォーマンス上の問題が懸念されたため、Darwinカーネル自体にマイクロカーネル構造は採用されていない。

ドライバモデルには、I/OKitと呼ばれるオブジェクト指向フレームワークを採用している。NEXTSTEPで採用されたDriverKitの後継のライブラリで、DriverKitのObjective-Cでの実装を機能限定版のC++での実装に置き換えたもの。開発ツールXcodeに含まれる。

Darwin (macOS) を立ち上げると最初に起動し端末の初期化を行うプロセスlaunchdというデーモンであり、他のUnix系システムのinitに相当する機能を担う。またinetd / xinetdと同じようにネットワークのポートを監視したり、cronのように指定時刻ごとにプロセスを立ち上げる機能も担当する(採用はDarwin 8.0から)。

DarwinにはCore FoundationなどCore Serviceの一部も含まれる[9]。ただし、CocoaCore ImageOpenGLGLSL)やCore Audio (OpenAL) やOpenCLといったAPIのほか、HTMLレンダリングエンジン群のWebKitXQuartzなどのGUI関連も含まず、Darwin単体の操作画面CUIとなっている。

歴史

編集
Unix系 OSの系統樹

Darwinは1989年に最初にリリースされた、NeXTNeXTSTEP OS(バージョン4.0からはOPENSTEPとして知られる)に起源を持つ。1997年AppleによるNeXTの買収後、次期のOSはOPENSTEPをベースに開発されることがアナウンスされた。これは同年にRhapsodyとなり、1999年には、Mac OS X Server 1.02000年には、Mac OS X Public Beta、そして2001年にはMac OS X 10.0に開発された。Mac OS Xのコアコンポーネントは、Apple Public Source Licenseの下、Darwinとしてオープンソースでリリースされているが、CocoaCarbonのようなより高次のコンポーネントはクローズドソースのままとなっている。

Darwin 8.0.1までのバージョンでは、Appleは、ISOイメージの形でバイナリインストーラーを提供していた[10]。これはMac OS Xのメジャーリリース後に、PowerPCIntel x86システムでDarwinをスタンドアロンのOSとしてインストールできるものであった。Darwinは現在、ソースコードとしてのみ利用できる[11]。ただしこれは、ARMアーキテクチャによるものを除いてであり、ARM向けDarwinはiOSwatchOStvOSから分離されてはリリースされていない。ただし、趣味的な開発者が公式のDarwinのソースコードをARMにポートしたwinocmがある[12]

リリース履歴

編集

以下は主なDarwinのリリースと、それに対応するmacOS (Mac OS X / OS X) の表である。[13] 対応するmacOSは異なる日にリリースされたかもしれないことに留意し、それらのリリース日についてはmacOSの個別ページを参照。

バージョン リリース日 対応するリリース 説明
0.1 1999年3月16日 Mac OS X Server 1.0
1.0.2 1999年11月10日 Mac OS X DP2
1.1 2000年4月5日 Mac OS X DP4
1.2.1 2000年11月15日 Mac OS X Public Beta
1.3.1 2001年4月13日 Mac OS X v10.0
1.4.1 2001年10月2日 Mac OS X v10.1 "起動時間、リアルタイムスレッド、スレッド管理、キャッシュフラッシング、プリエンプションハンドリング"に対するパフォーマンスの改善。SMBWgetを置き換えるcURLのサポート。[14]
6.0.1 2002年9月23日 Mac OS X v10.2 (Darwin 6.0.2) GCCを2から3.1にアップグレード、 IPv6IPSecのサポート、mDNSResponder service discoveryデーモン(Rendezvous)、CUPS, Ruby, Pythonの追加、HFS+でのジャーナリングのサポート(Darwin 6.2)、プログラムをより速く起動するためのアプリケーションプロファイル("pre-heat files")の追加。[15]
7.0 2003年10月24日 Mac OS X v10.3 FreeBSD 5に対応したBSDレイヤー、自動デフラグメンテーション、hot-file clustering、HFS+でのcase sensitivityオプション、read-onlyなNTFSのサポート。デフォルトのシェルをtcshからbashに変更。(Darwin 7.9).[16]
8.0 2005年4月29日 Mac OS X v10.4
Mac OS X for Apple TV (Darwin 8.8.2)
安定的なカーネルプログラミングインターフェース、よりきめ細かいカーネルロック、64ビットBSDレイヤー、launchdサービス管理フレームワーク、拡張ファイル属性アクセス制御リストcpmvなどのコマンドを拡張属性やリソースフォークが保持できるようにアップデート。[17]
9.0 2007年10月26日 iOS 1.0 (Darwin 9.0.0d1)
Mac OS X v10.5
完全なPOSIX準拠、階層的プロセススケジューリングモデルの改善、動的メモリ確保スワップファイル、(ファイルプロセスに対する)動的なリソース制限、プロセスのサンドボックス化、アドレス空間配置のランダム化DTrace tracing framework、ファイルシステムイベントデーモン、ディレクトリハードリンクApache 1.3とPHP 4をそれぞれApache 2.2とPHP 5にアップデート、ZFSのサポート。[18]
10.0 2009年8月28日 Mac OS X v10.6 PowerPCの公式サポートの終了(ただしカーネルなどいくつかのファットバイナリがPPCイメージをまだ含んでいる)、64ビットのカーネルとドライバ、libdispatchタスク並列化フレームワーク、OpenCLヘテロジニアスコンピューティングフレームワーク、C言語のBlocks(クロージャを作るためにラムダ式のような構文を用いる非標準の言語拡張)のサポート、HFS+における透過的なファイル圧縮[19]
10.1.0 2009年9月10日 Mac OS X v10.6.1
10.2.0 2009年11月9日 Mac OS X v10.6.2
10.3.0 2010年3月29日 iOS 4.0 (Darwin 10.3.1)
Mac OS X v10.6.3
10.4.0 2010年6月15日 Mac OS X v10.6.4
10.5.0 2010年11月11日 Mac OS X v10.6.5
10.6.0 2011年1月6日 Mac OS X v10.6.6
10.7.0 2011年3月21日 Mac OS X v10.6.7
10.8.0 2011年6月23日 Mac OS X v10.6.8
11.0.0 2011年7月20日 OS X v10.7 XNUがPPCをサポートせず(i386, x86_64のためだけのファットバイナリ)、x86_64プロセッサを必要とする。アプリケーションのサンドボックス化の改善。
11.1.0 2011年8月16日 OS X v10.7.1
11.4 2012年5月9日 OS X v10.7.4
11.4.2 2012年9月12日 OS X v10.7.5
12.0 2012年2月16日 OS X v10.8
13.0.0 2013年6月11日 OS X v10.9
13.1 2014年2月25日 OS X v10.9.2
13.3.0 2014年6月30日 iOS 7
OS X v10.9.4
14.0.0 2014年9月18日 iOS 7.1-7.1.2, iOS 8
OS X v10.10
14.5.0 2015年8月13日 OS X v10.10.5
15.0.0 2015年9月16日 iOS 9.0
OS X v10.11.0
15.4.0 2016年3月21日 OS X v10.11.4

Mac OS X v10.1.1のリリースで、バージョン番号がDarwin 1.4.1から5.1へ飛んでいるのは、DarwinをmacOSのバージョンとビルド番号の体系に結びつけたためである。macOSのビルド番号の体系では、すべてのバージョンが固有のビルド番号ではじまり、macOSのバージョンの全体の中のどの部分であるかわかるようになっている。Mac OS X v10.0は4ではじまるビルド番号があり、10.1には5ではじまるビルド番号があった(初期のビルド番号は開発者リリースを表していた)。Darwinのバージョンにあるピリオド以下の番号は、Mac OS Xのバージョンにある二つめのピリオド以下の番号とおなじである。Mac OS X v10.1.1(バージョン番号が飛んだときのバージョン)の場合は、ビルド5M28および10.1.1リリースであり、バージョン番号の5.1はこれに由来する。[20]

ターミナルuname -rのコマンドを実行するとDarwinのバージョン番号が表示され、uname -vとするとDarwinのバージョン番号をふくんだXNUのビルドバージョンが表示される。

派生プロジェクト

編集

Darwinは自由ソフトウェアであるため、修正や強化を目的とする多くのプロジェクトがある。

OpenDarwin

編集
OpenDarwin上で実行されたGNOME

OpenDarwinはDarwinシステムをもとにしたコミュニティ主導のOSである。Appleの開発者と自由ソフトウェアコミュニティとの協調を高めることを目指して、2002年4月にAppleとInternet Systems Consortiumによって設立された。このプロジェクトはAppleによるDarwinのリリースに恩恵を与えたが、しかし独立したDarwin OSを作成する試みは達成できず、プロジェクトは停止した[21]

PureDarwin

編集

2007年、PureDarwinプロジェクトがOpenDarwinの後継としてはじまり、現在[いつ?]Darwin 9にもとづいたリリースの制作が進められている。「PureDarwin XMas」と呼ばれる、Darwin 9にもとづいたデベロッパープレビューが入手できる。このリリースはX11DTraceZFSをもつ[22]。「PureDarwin nano」は最小限のコンポーネントだけをもつ、別のリリースである。

その他

編集
XDarwinで動作するWindow Maker

脚注

編集
  1. ^ Kernel Architecture Overview”. Kernel Programming Guide. 2024年1月3日閲覧。
  2. ^ darwin-xnu/README.md at master”. GitHub. 2019年3月31日時点のオリジナルよりアーカイブ。2019年11月21日閲覧。
  3. ^ Apple - Public Source - Darwin FAQ”. 2004年11月19日時点のオリジナルよりアーカイブ。2021年8月9日閲覧。
  4. ^ Binary Drivers required for PureDarwin”. 2009年11月18日時点のオリジナルよりアーカイブ。2009年7月20日閲覧。
  5. ^ Mac OS X Leopard - Technology - UNIX”. Leopard Technology Overview. Apple Inc.. 2008年12月27日時点のオリジナルよりアーカイブ。2023年12月16日閲覧。 “Leopard is now an Open Brand UNIX 03 Registered Product, conforming to the SUSv3 and POSIX 1003.1 specifications for the C API, Shell Utilities, and Threads.”
  6. ^ The Open Group (2007年5月18日). “Mac OS X Version 10.5 Leopard on Intel-based Macintosh computers certification”. 2023年12月16日閲覧。
  7. ^ macOS version 10.13 High Sierra on Intel-based Mac computers”. The Open Group. 2023年12月16日閲覧。
  8. ^ X is Not Unixの略とされる。
    Porting UNIX/Linux Applications to Mac OS X: Glossary
  9. ^ “第4回 plist(プロパティリスト)とFoundation【後編】”. ITmedia. (2007年5月30日). https://www.itmedia.co.jp/enterprise/articles/0705/30/news011_3.html 
  10. ^ web.archive.org/web/20161007041552/https://opensource.apple.com/static/iso/
  11. ^ Hubbard, Jordan (October 31, 2007). “Re: Darwin 9.0 Source Code Available.". darwinos-users (Mailing list). Archived from the original on February 25, 2008. Retrieved November 27, 2007.
  12. ^ github.com/darwin-on-arm/xnu
  13. ^ "Darwin Releases." Appleデベロッパ. Retrieved on 2007-10-24.
  14. ^ "Technical Note TN2029: Mac OS X v10.1." Appleデベロッパ. Retrieved on 2008-06-02.
  15. ^ Siracusa, John (September 5, 2002). "Mac OS X 10.2 Jaguar." Ars Technica. Retrieved on 2008-05-31.
  16. ^ Siracusa, John (November 9, 2003). "Mac OS X 10.3 Panther." Ars Technica. Retrieved on 2008-05-31.
  17. ^ Siracusa, John (April 28, 2005). "Mac OS X 10.4 Tiger." Ars Technica. Retrieved on 2008-05-30.
  18. ^ Siracusa, John (October 28, 2007). "Mac OS X 10.5 Leopard: the Ars Technica review." Ars Technica. Retrieved on 2008-05-30.
  19. ^ Siracusa, John (August 31, 2009). "Mac OS X 10.6 Snow Leopard: the Ars Technica review." Ars Technica. Retrieved on 2009-11-29.
  20. ^ Prabhakar, Ernie (November 9, 2001). "Darwin Version - New Scheme in Software Update 1." Apple Mailing Lists. Retrieved on 2008-06-02.
  21. ^ OpenDarwin Core Team and Administrators (July 25, 2006). "OpenDarwin Shutting Down." OpenDarwin Project. Retrieved on 2007-04-16.
  22. ^ PureDarwin Download Page.
  23. ^ Security Enhanced Darwin”. SEDarwin (2007年1月22日). 2010年7月12日閲覧。
  24. ^ What's New In Mac OS X: Mac OS X v10.5”. Mac OS X Reference Library. Apple (2009年11月13日). 2010年6月13日閲覧。
  25. ^ http://www.ertos.nicta.com.au/software/darbat/home.pml | ERTOS | NICTA”. Ertos.nicta.com.au (2007年5月9日). 2010年7月12日閲覧。
  26. ^ yuriwho (2002年5月5日). “WirelessDriver Home Page”. Wirelessdriver.sourceforge.net. 2010年7月12日閲覧。
  27. ^ iwi2200 Darwin”. SourceForge (2009年3月27日). 2010年6月13日閲覧。
  28. ^ Port BSD tulip driver(s) to Darwin OS | Download Port BSD tulip driver(s) to Darwin OS software for free at”. Sourceforge.net. 2010年7月12日閲覧。
  29. ^ RealTek network driver for MacOSX/Darwin”. SourceForge (2006年3月15日). 2010年6月3日閲覧。 Project inactive since 2006-03-15.
  30. ^ fansui, et al. (2007年8月1日). “RTL8150LMEthernet”. SourceForge. 2010年6月13日閲覧。
  31. ^ ZyXEL Modem Drivers for OS X/Darwin | Download ZyXEL Modem Drivers for OS X/Darwin software for free at”. Sourceforge.net (2002年5月14日). 2010年7月12日閲覧。
  32. ^ Mac OS X PC Card ATA Driver”. Pccardata.sourceforge.net (2001年12月20日). 2010年7月12日閲覧。
  33. ^ Mac OS X Ext2 Filesystem | Download Mac OS X Ext2 Filesystem software for free at”. Sourceforge.net (2002年10月14日). 2010年7月12日閲覧。
  34. ^ ext2 filesystem in user space”. SourceForge (2008年7月14日). 2010年6月13日閲覧。

外部リンク

編集

📚 Artikel Terkait di Wikipedia

HISASHI

LOVE」でも共演)。なお、このライブには20歳以上限定という年齢制限があった。 2001年 愛用している「binary」とのコラボレーショングッズ、「HISASHI VS binary WネームTシャツ」をファンクラブ限定で発売。 2005年 8月26日、DJを務めるラジオ番組の放送100回を記念して、『FM-FUJI

Debianのバージョン履歴

release contained around 18,000 binary packages over 20 binary CDs (3 DVDs) in the official set. There were also two binary CDs available to install the

Arcaea

PURE 最もタイミングよくノートをタップできたことを示す判定。 内部的には細かい2つの判定となっており、設定の「Pure L/E表示」を有効にしたうえでPURE判定を取った際に、プレイ画面に「EARLY」若しくは「LATE」と表示される判定(以下有印PURE

Alien (ソフトウェア)

rpmへと変換するコマンドである。 ポータル FOSS パッケージ管理システム Linux Standard Base 公式ウェブサイト alien(1): Convert/install alien binary package – Linux User Commands Manual (en) 表示 編集 表示 編集

四元数

自体には標準的な群構造はないが)ベルソルの成す部分群の像は点群であり、逆に点群の逆像はベルソル全体の成す部分群となる。有限点群の逆像は、それぞれの点群の名前に二項 (binary) を付けて呼ぶ。例えば二十面体群の逆像は二項二十面体群である。 ベルソル全体の成す群は、2次特殊ユニタリ群 〖SU〗⁡(2) に同型である。 a

溝口貴紀

Face」の初回限定盤カップリング曲「LIVE ON」でも使用されて以来、ジャンルを限らず広く使用されるようになった。 L(R)UCCA:主にビーイング内のpure:infinity所属のHundred Percent Freeへの提供時に使用。 溝口RUCCA:小説執筆時に使用。 IRONBUNNY 「23

逢坂良太

CLIMAX(真奥貞夫) BinaryStar(カミヤ・ユン) パズドラ バトルトーナメント -ラズール王国とマドロミドラゴン-(フォーレン・ラズール) 華アワセ 姫空木編(カラクリくん) ハマトラ Look at Smoking World(ナイス) ヒーローバンク2(維新漁馬) BLACK CODE ブラック・コード(ベル=ベルゼブル)

3DCGソフトウェア

オープンソース。BRDFの開発・解析用ソフトウェア。MERLデータベース形式(*.binary)及びMIT CSAILデータに対応している。ライセンスはMS-RL。 BRDFLab オープンソース。MERLデータベース形式(*.binary)及びMPIのCar Paint Library形式に対応している。ライセンスはGPL。