项目开篇解释说:“Helios操作系统的设计目的是简化异构平台上的应用程序编写、部署和调整。Helios引入了卫星内核,使用单独一个统一的操作系统抽象层面向不同架构、性能特点的处理器。通过远程消息传递让对文件系统等I/O 服务的访问变得透明,把标准的微型内核消息传递抽象层拓展为卫星内核架构。Helios利用一种中间语言对应用程序进行编译,将其重定向至可用的 ISA(指令集架构)。”
Helios是一个基于卫星内核(satellite kernel)的异构多处理平台,其根源可以追溯到微软的另一个操作系统项目“Singularity”——一个完全以托管代码形式开发的微型内核操作系统和一系列相关工具、库,还衍生出了“Midori”。
开发人员对Singularity RDK研究开发包进行了修改,以便支持卫星内核、远程消息传递和亲和性(Affinity),现在已经支持两种不同的硬件平台:Intel XScale可编程I/O卡和连续缓冲NUMA架构。很多时候只是改变一行元数据,就可以将一些应用程序和系统组件卸载过去,将任务卸载到XScale I/O卡上能看到最多28%的性能提升,而在一个邮件服务器测试中通过在多个NUMA域之间自动拆分应用程序,性能提升了39%。
根据微软的描述,Helios“受到了LOCUS、Emerald、Quicksilver等分布式操作系统的启发”,“将可编程设备作为小型分布式系统的一部分来对待”。
文档中说:“Barrelfish关注的是深入了解应用程序运行时的需求,Helios则是在异构协处理器上导出单一内核镜像,让应用程序更好地发挥新硬件平台的优势。”
Singularity、Midori、Barrelfish、Helios 正是微软对于Windows系列操作系统之外的操作系统的探索,Windows的发展不应该是越来越狭隘的,而这些操作系统项目的出现,正是对Windows操作系统的扩展与补充。