微软研究院发布Singularity RDK

3月4日,Singularity研发工具包(RDK)在CodePlex网站上发布为开源项目。该RDK基于微软研究院的Singularity项目,Singularity项目由Galen Hunt、Jim Larus及其他人员研发。项目网站表示,Singularity主要“通过系统、语言、工具领域的创新来构建可靠的系统。”

Singularity RDK包括“源代码、构建工具、测试套件、设计笔记、以及其它背景资料”,这些资料可用来研究、运行Singularity。资料中包括一个名叫 “构建并运行Singularity”的17页文档,该文档串讲了配置Singularity和RDK的步骤。已经有五十多个可构建、部署的独立应用和项目进行了下载,下载中包括一整套的测试套件和一套标准检查程序。

RDK还提供了数十个Singularity设计笔记(SDN),描述了Singularity的某些特性或其中一项工程是如何进行设计和预期工作的。举例来说,“SDN 0:Singularity的设计动机”包括关于所谓重中之重的讨论:

四个设计要点结合起来以产生一个操作系统,这个操作系统在未来的研究和系统可靠性的创新方面是敏捷的。这些设计要点是:一套类型安全的 抽象指令集做为系统的二进制接口,适合应用程序和操作系统的一个 统一扩展机制,一个 强大的进程隔离架构,以及一个用于描述代码和数据的 无所不在的元数据基础架构

微软研究院站点和RDK站点对Singularity项目的概述如下:

语言、编译器、工具上的进展可以有效地推动软件改进的可能性。比如说,Singularity使用类型安全的语言和抽象指令集使我们能够访问软件独立进程(SIPs)。无需硬件强制保护域的辅助作用,SIPs就能提供与操作系统进程之间有力的隔离保证(独立对象空间、独立垃圾回收机制、独立运行时)。目前,Singularity原型的SIPs非常容易获取;它们都运行在内核地址空间的Ring 0。

Singularity利用这些进展来构建更加可靠的系统和应用程序。例如,由于创建、执行SIPs都非常容易,所以Singularity能在自己的SIP中运行每个程序、设备驱动程序、或系统扩展。SIPs不允许共享内存、修改自己的代码。因此,我们可以获得有力的可靠性保证,保证代码运行在一个SIP中。我们可以在编译或安装阶段验证SIP属性,这要比对运行在传统操作系统进程中的代码的验证更为广泛。对预知系统行为和给用户提供有力的可靠性保证来说,关键问题就是更加广泛地应用状态验证。

Singularity项目站点有一些与Singularity和RDK相关的文章、访谈、MSDN链接。最有用的一些入门资料包括Galen Hunt和James Larus写的“Singularity:对软件栈的反思”[pdf],以及一个PDF版本的Singularity RDK指南[pdf]。

RDK站点有一个非常活跃的讨论组,多数社区成员都可以在那里发布关于使用Singularity和RDK的问题、解决方案、观点。

Singularity RDK目前只用于非商业性的学术用途。

查看英文原文: Microsoft Research Releases Singularity RDK

你可能感兴趣的:(微软研究院发布Singularity RDK)