《架构之美》——Xen和虚拟化之美。首先Xen是什么?Xen是一个虚拟化平台,它来自于一项学术研究成果,现已发展成一个重要的开源项目。它容许用户在单个物理机器上运行几个操作系统,并特别强调性能、隔离性和安全性。对于信任和不信任,在我们软甲架构上来说,不信任是一个有用的架构特征,着听起来似乎违反常识。可信的系统是一个允许访问数据的系统,当不信任被构建入架构时,可信组件的数量会减到最少,并由此默认地提供了安全性。以为我们不能只使用一个操作系统,多用户系统通常需要用户之间由一定的心和规范,以便不会出现问题。虚拟化也存在一些问题,通过对问题的分析与处理,前人发现了半虚拟化的重要性和开源开发的优点。任何虚拟化在解决一个问题的时候,都会带来一个新问题,半虚拟化可以很好地应对这种情况;
Guardian,一个容错操作系统环境。Guardian是Tandem的容错“NonStop”系列计算机的操作系统。它设计成与硬件并行以便用最小的开销提供容错性。Guardian是一个微核系统:除了低级别的中断处理器(一个单独的过程,IOINTERRUPT)和一些非常低级别的代码之外,所有的系统服务都由运行在系统代码和数据空间中的系统进程处理。
JPC:一个纯java的x86 PC模拟程序。模拟程序很慢,Java也很慢,两者相结合,那就是慢上加慢。后来,通过人们的一些想法,在一个安全的Java沙箱内启动Linux和Windows时速度仍然保持快到足于实际使用。然后通过仿制,创造发明了一个架构,它表明了纯Java的x86硬件模拟程序是可行的且速度最终能够快到足于实际使用。保护模式的到来带来了一个完整的存储器管理系统,同时在物理地址空间之上又增加了一个复杂的层。在保护模式中,内存分页可以是激活的,着容许物理地址空间的4kb块进行重新排列。在商业背景中,面对必要的残酷史需要勇气的,但是我们认为在这种关键时刻缺少勇气是项目失败的一个潜在的和通常没有识别出来的主要原因,尤其对于最有创新和挑战的项目。为了获得一个具有完全料想不到的有点的美丽架构,忠于你的信念,并无所畏惧。
元循环虚拟机的力量,Jlikes RVM。 Jikes RVM的成熟虚拟机,它采用Java语言编写来运行Java运行程序。不但运行时系统是用Java编写的,而且这个架构的所有其他组件都是用Java编写的。何为编程语言拥有像T型图形式的,T型图:利用一个C编译器(它运行并创建PowerPC机器码)来编译一个用C语言编写的、创建PowerPC机器码的Pascal编译器,生成一个运行PowerPC机器码的编译器,并创建PowerPC机器码。Jikes RVM又许多其他有趣的扩展和相关的项目,包括通过二进制翻译支持像C和C++这样的语言,通过扩展在虚拟机内部提供面向方面的变成,使整个虚拟机进入一个操作系统以消除运行优化的障碍。通过拥有一个美丽的架构,Jikes RVM可以为将来的额运行时环境连续地提供一个平台。