虚拟化和云
虚拟化的主要思想是虚拟化监控程序(virtual Machine Monitor,VMM)在同一物理硬件上创建出有多台虚拟机器的假象,VMM又称作虚拟机管理程序(hypervisor);
这种方法的好处是一台虚拟机的故障不会影响其他虚拟机,在应该虚拟化系统中,不同的服务器可以运行在不同的虚拟机上,从而以更低的开销和更好的可维护性保留计算机系统具有的局部故障模型,而且,可以在同一硬件上运行多个不同的操作系统,并且享受虚拟机隔离带来的安全性和其他好处;
在虚拟机下的好处:物理机数量的减少节省了硬件和电力开销以及机架空间的占用,设置检查点和虚拟机迁移,比在普通操作系统上运行的迁移给更加容易的多;
虚拟机技术目前更时髦的是云,云的核心思想:将你的计算或存储需求外包给一个管理良好的数据中心,领域专家组成的公司专门运营这个数据中心,由于数据中心通常是他人所有,因此你需要为使用的资源付费,但你不需要考虑机器,供电,冷却和维护等问题;
历史
虚拟化的必要条件
虚拟机来讲,重要的一点是要像真实的机器那样运转,虚拟机管理程序需要在三个维度有良好的表现:
- 安全性:虚拟机管理程序应完全掌控虚拟资源
- 保真性:程序在虚拟机上执行的行为应在裸机上相同
- 高效性:虚拟机中运行的大部分代码应不受虚拟机管理程序的干涉
在解释器中逐条考虑指令并准确执行其行为是一种安全执行指令的方式。有些指令可以直接执行,例如解释器可以按原样执行INC(增量)指令。其他不能安全地直接执行的指令需要由解释器进行模拟。例如,不能真正允许客户操作系统禁用整台机器的中断,或者修改页表映射。模拟的技巧是使虚拟机管理程序上运行的操作系统认为自己已经禁用了中断或修改了页表映射。目前,可以认为解释器能够保证安全性,如果精心实现甚至能做到高保真,但是解释器的性能堪忧。为了满足性能要求,我们将看到虚拟机管理程序试图直接执行大多数代码。
虚拟化结构要保证保真性的前提下