Singularity是微软研究院(Microsoft Research)的一项创新的操作系统研究项目,它几乎完全使用C#语言编写,通过开发新的技术和工具来监督和验证应用程序的执行,以达到一个更加稳固和可靠的软件平台。Singularity已在CodePlex上发布了它全部的源代码和构建工具,本文介绍了如何配置和构建Singularity,以及使用Virtual PC运行它。
前提:
1. 在Singularity的CodePlex站点下载源码和工具包,或者在本地下载
2. 下载和安装.NET Framework(本地下载.NET Framework 3.5)
3. 下载和安装Virtual PC,这可以在DreamSpark软件资源中下载得到
4. 因为源代码数量很大,所以需要保障源代码所在的分区有1.5GB以上的空间,为保证虚拟机的正常运行,你需要有512MB以上的空闲内存。
OK,准备完毕,开始配置环境吧!
解压缩Singularity的文件到一个新的文件夹,比如E:\Projects\Singulatrity。
运行命令行cmd.exe(如果是Vista用户,则需要使用Administrator权限),转到Singularity的根目录,依次运行
configure.cmd和base\setenv.cmd。
下一步便是执行编译源码的脚本:在当前目录(Singularity\base)执行msb Distro\Tiny.proj,此时MSBuild工具将调用Tiny.proj文件中的构建脚本,编译过程大约需要十多分钟。
使用Virtual PC运行Singularity是通过PXE来启动的,所以主机(Host)需要配置一个Loopback的网络,步骤如下:
1. 进入控制面板->添加新硬件
2. 点击下一步,选择“是”,点击下一步
3. 选择“添加新新硬件”,点击下一步
4. 选择“从列表中手动选择”,点击下一步
5. 在硬件类型中选择“网络适配器”,制造商选择“Microsoft”,在网络适配器列表中选择“Microsoft Loopback adapter”
6. 点击下一步,直到完成
7. 在“网络连接”中选择刚才新添加的连接,右键点击“属性“,双击TCP/IP,更改IP地址为10.99.99.1,子网掩码为255.255.255.0,点击确定:
8. 在此网络连接对话框中选择高级,进入防火墙设置,点击“添加端口”,添加UDP端口67以及UDP端口69,点击确定。
必须的配置都已完成,最后需要复制Singularity生成的虚拟机文件并使用它的boottest脚本运行Virtual PC并载入Singularity系统:
Singularity 操作系统在虚拟机中运行的画面: