Apple、Snow LeopardのGrand Central Dispatchをオープンソース化

Apple、Snow LeopardのGrand Central Dispatchをオープンソース化

プリンス・マクリーンのプロフィール写真プリンス・マクリーン

· 2分で読めます

Grand Central Dispatch は Snow Leopard のユニークで重要なマーケティング機能であるにもかかわらず、Apple は、Grand Central Dispatch の背後にあるコードを、自由な Apache 2.0 ライセンスの下で公開することを決定しました。

Snow Leopard の新しい Grand Central Dispatch 機能は、開発者向けに複数のプロセッサ コア間での並列タスク実行を管理するためのシステム全体のメカニズムとして機能し、オペレーティング システム内の複数のコンポーネントが関係します。

libdispatch と呼ばれる Grand Central Dispatch サービス API のユーザー空間実装は、独自のオープンソース プロジェクトとして提供されており、Darwin OS XNU カーネルのカーネル コンポーネントや LLVM プロジェクトの一部であるブロック ランタイムなど、Apple がすでにオープンとして指定しているプロジェクトの一部である他のコンポーネントと結合されています。

科学研究コミュニティにおける Apple の技術の利用状況を扱うウェブサイト、 MacResearchによると、Apple のコード配布は「ちょっとしたサプライズ」だった。Snow Leopard の新機能は「マルチコアの新しい世界で Apple に競争上の優位性を与える可能性がある」からだ。

しかし、コードをコミュニティに公開することで、その普及への道が開かれる可能性があります。MacResearchの記事で、ドリュー・マコーマックは次のように述べています。「今日まで、Mac OS X上でGrand Centralを使って新しいUNIXツールが開発されることは、Macでしか動作しないという理由だけで、ほとんど考えられませんでした。Grand Centralが他のUNIXシステムでも利用できるようになる可能性を考えると、Grand Centralがコマンドラインツールに組み込まれる可能性は大幅に高まります。」

マコーマック氏は、アップルが新しいコードを共有することにほとんどリスクはないとし、「グランド・セントラルがマイクロソフトのようなアップルの直接の競合企業によって使用される可能性は低い」とし、他のUNIXやLinuxシステムに採用されても「アップルの消費者向けビジネスに実際に脅威を与えることはない」と指摘した。

Appleは、WebKitからCUPSまで、様々なオープンソースプロジェクトに貢献し、運営しています。コードをオープンソース化する取り組みの中には、大成功を収めたものもあれば、あまり関心を集めていないものもあります。例えば、Mac OS X以外のオープンソースコミュニティでは、Appleのlaunchdへの関心はそれほど高くありません。これは主に、これを利用するためにLinuxに大幅な改修が必要になるためです。

他社が利用しやすいAppleコードに対するオープンソースサポートは、賛否両論です。Mac OS X ServerにQuickTime Streaming Serverとして組み込まれたAppleのRTSPストリーミングプロジェクトであるDarwin Streaming Serverは、限定的に利用されています。Webkitは特にモバイル分野で大きな成功を収めています。BonjourはLinux向けに実装され、新たな方向性へと進んでいます。

Grand Central Dispatchへの外部からの新たな関心が高まることで、OpenCLなどのAppleの他のオープンテクノロジーと互換性のある並列処理を構築するためのサポート基盤が拡大する可能性があります。Linuxやその他のUnixオペレーティングシステムでディスパッチャが利用可能になれば、その能力を活用する他のコマンドラインユーティリティへの需要も喚起されるでしょう。これは、エンタープライズやスーパーコンピューティングといった、Appleが少数派である市場において、自社のテクノロジーを活用できるようになることを意味します。