Singularity RDKには、Singularityの調査と実行を開始するために利用できる「ソースコード、ビルドツール、テストスイート、デザインノート、およびその他のバックグラウンドマテリアル」が含まれる。リソースには、Singularityの入手からRDKのセットアップまでの手順を説明する「Singularityの構築と実行」と呼ばれる17ページのドキュメントが含まれる。完全なテストスイートとベンチマークのセットを含む、ビルドおよびデプロイ可能な、50以上の個別のアプリケーションやプロジェクトもダウンロードできる。
またRDKには、Singularityの機能がどれくらい信頼できるかや、プロジェクトの一つがどのような働きを期待して設計されたかを記述した、数十のSingularityデザインノート(SDN)も付属している。たとえば「SDN 0: Singularityの設計の動機」には、いわゆる重心(Centers of Gravity)に関する話が含まれる。
MicrosoftリサーチのサイトとRDKのサイトに、Singularityプロジェクト自体の概説がある。将来の調査とシステムの信頼性を革新するアジャイルなOSを提供するために、4つの設計ポイントを組み合わせます。これらの設計ポイントは、システムのバイナリインタフェースとしてのタイプセーフな抽象命令セット、アプリケーションとOSのための統一的な拡張メカニズム、強固なプロセス隔離アーキテクチャ、およびコードとデータを記述するユビキタスなメタデータ基盤です。
Singularityプロジェクトのサイトには、SingularityとRDKに関するいくつかの記事、インタビュー、およびMSDNのリンク(リンク・英語)がある。始めるのにとても役立つものとして、Galen HuntとJames Larusによる「Singularity: ソフトウェアスタックを再考する(PDF・英語)」およびSingularity RDKチュートリアルのPDF版(PDF・英語)がある。言語、コンパイラ、およびツールの発展は、ソフトウェアの大きな改善の可能性を開きます。たとえばSingularityは、私たちがSIPs(Software Isolated Processes)と呼ぶものを可能にするために、タイプセーフな言語と抽象命令セットを利用します。SIPsは、ハードウェアに強制される保護ドメインのオーバーヘッドなしで、OSプロセスの強固な隔離(オブジェクト空間の隔離、GCの分離、ランタイムの分離)の保障を提供します。現在のSingularityプロトタイプでは、SIPsは極めて安価です。それらは、カーネルのアドレス空間のリング0で実行されます。
Singularityはより信頼性のあるシステムやアプリケーションを構築するために、それらの発展を利用します。たとえば、SIPsの作成や強制はとても安価なので、Singularityはそれ自身のSIPで、それぞれのプログラム、デバイスドライバ、あるいはシステム拡張を実行します。SIPsはメモリの共有やそれら自身のコードの変更を許可しません。結果として、私たちはSIPで実行されるコードの強固な信頼性を保障することができます。私たちはコンパイル時あるいはインストール時に、従来のOSプロセスで実行されるコードに対して行える以上に、SIPに関するとても広範なプロパティを検証することができます。静的な検証の広範な適用は、システムの振る舞いを予測したり、信頼性に関する強固な保障をユーザに提供するために重要です。
RDKのサイトには、SingularityとRDKの利用について、多くのコミュニティのメンバーが質問、解決方法、およびアイデアを投稿する、とても活発な議論のリスト(source)がある。
Singularity RDKは現在、非商用の研究目的のためにだけ利用(source)できる。
原文はこちらです:http://www.infoq.com/news/2008/04/singularity-rdk