この記事は検証可能な参考文献や出典が全く示されていないか、不十分です。出典を追加して記事の信頼性向上にご協力ください。(このテンプレートの使い方)
出典検索?: "Darwin" オペレーティングシステム
Darwin開発者Apple
プログラミング言語.mw-parser-output .hlist ul,.mw-parser-output .hlist ol{padding-left:0}.mw-parser-output .hlist li,.mw-parser-output .hlist dd,.mw-parser-output .hlist dt{margin-right:0;display:inline-block;white-space:nowrap}.mw-parser-output .hlist dt:after,.mw-parser-output .hlist dd:after,.mw-parser-output .hlist li:after{white-space:normal}.mw-parser-output .hlist li:after,.mw-parser-output .hlist dd:after{content:" ・\a0 ";font-weight:bold}.mw-parser-output .hlist dt:after{content:": "}.mw-parser-output .hlist-pipe dd:after,.mw-parser-output .hlist-pipe li:after{content:" |\a0 ";font-weight:normal}.mw-parser-output .hlist-hyphen dd:after,.mw-parser-output .hlist-hyphen li:after{content:" -\a0 ";font-weight:normal}.mw-parser-output .hlist-comma dd:after,.mw-parser-output .hlist-comma li:after{content:"、";font-weight:normal}.mw-parser-output .hlist-slash dd:after,.mw-parser-output .hlist-slash li:after{content:" /\a0 ";font-weight:normal}.mw-parser-output .hlist dd:last-child:after,.mw-parser-output .hlist dt:last-child:after,.mw-parser-output .hlist li:last-child:after{content:none}.mw-parser-output .hlist dd dd:first-child:before,.mw-parser-output .hlist dd dt:first-child:before,.mw-parser-output .hlist dd li:first-child:before,.mw-parser-output .hlist dt dd:first-child:before,.mw-parser-output .hlist dt dt:first-child:before,.mw-parser-output .hlist dt li:first-child:before,.mw-parser-output .hlist li dd:first-child:before,.mw-parser-output .hlist li dt:first-child:before,.mw-parser-output .hlist li li:first-child:before{content:" (";font-weight:normal}.mw-parser-output .hlist dd dd:last-child:after,.mw-parser-output .hlist dd dt:last-child:after,.mw-parser-output .hlist dd li:last-child:after,.mw-parser-output .hlist dt dd:last-child:after,.mw-parser-output .hlist dt dt:last-child:after,.mw-parser-output .hlist dt li:last-child:after,.mw-parser-output .hlist li dd:last-child:after,.mw-parser-output .hlist li dt:last-child:after,.mw-parser-output .hlist li li:last-child:after{content:")\a0 ";font-weight:normal}.mw-parser-output .hlist ol{counter-reset:listitem}.mw-parser-output .hlist ol>li{counter-increment:listitem}.mw-parser-output .hlist ol>li:before{content:" "counter(listitem)" ";white-space:nowrap}.mw-parser-output .hlist dd ol>li:first-child:before,.mw-parser-output .hlist dt ol>li:first-child:before,.mw-parser-output .hlist li ol>li:first-child:before{content:" ("counter(listitem)" "}
C
C++
Objective-C
アセンブリ言語
OSの系統Unix,[1][2] BSD[3]
開発状況開発中
ソースモデル現在はプロプライエタリなコンポーネントを含むオープンソース。かつてはオープンソース。
初版2000年11月15日 (23年前) (2000-11-15)
最新安定版23.1.0 / 2023年10月25日 (6か月前) (2023-10-25)
リポジトリ
github.com/apple-oss-distributions/xnu
プラットフォームサポート中: x86-64, 64-bit ARM, 32-bit ARM(32-bit ARMサポートはクローズドソース)
過去にサポート: PowerPC (32-bit and 64-bit), IA-32
カーネル種別ハイブリッドカーネル (XNU)
ライセンス主にApple Public Source License (APSL)だが、ドライバにクローズドソースソフトウェアも使用。[4]
ウェブサイトopensource.apple.com
テンプレートを表示
Darwin(ダーウィン)は、Appleが開発するオペレーティングシステム (OS) で、macOSやiOS、iPadOS、さらにはwatchOSとtvOS、bridgeOSの基礎となる部分でもある。 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]。ただし、CocoaやCore Image(OpenGL、GLSL)やCore Audio (OpenAL) やOpenCLといったAPIのほか、XQuartzなどのGUI関連も含まず、Darwin単体の操作画面はCUIとなっている。
概要
テクノロジー