真作假时假亦真——也谈服务器虚拟化(2)
2007-11-10 00:05:16 来源:WEB开发网核心提示:虚拟化的起源、发展 早在大型机时代,IBM的VM/370就采用虚拟化技术来划分其硬件资源,真作假时假亦真——也谈服务器虚拟化(2),提供给多用户使用,曾几何时, 虚拟机监视器(VMM)和已安装的Guest OS处理器状态信息保留在专用内存地址空间中,这样可以缩短各个操作系统访问硬件之间的间隔时间,处理器层面的虚拟技术似
虚拟化的起源、发展
早在大型机时代,IBM的VM/370就采用虚拟化技术来划分其硬件资源,提供给多用户使用。曾几何时,处理器层面的虚拟技术似乎是 RISC处理器的“专利”,但是随着AMD和Intel的积极参与,第一次将虚拟化技术推向了x86架构的处理器层面,在操作系统层面的虚拟化技术得到处理器的配合和支持后,将会使更多用户真正享受到虚拟化技术带来的服务器资源利用率的提升。
虚拟化有两种实施方式:传统的纯软件虚拟化方式和新的硬件辅助虚拟化方式。
在保护模式下,x86处理器一共有4个不同优先级,术语称为Ring,从Ring 0~Ring3。Ring 0的优先级最高,Ring 3最低。Ring 0用于操作系统内核, Ring 1和Ring 2用于操作系统服务,Ring 3用于应用程序。
位于Ring 0特权空间的操作系统可以优先访问各种硬件资源。传统的虚拟化技术是在Ring 0中运行一个称为虚拟机监视器(VMM)的软件中间层,以负责控制和排列各个分区访问硬件资源的优先顺序。它要求在软件堆栈的较高层运行操作系统——通常是在Ring 1或者与系统应用共用Ring 3。
由于操作系统缺省工作在Ring 0 特权级别,而现在Ring 0被虚拟机监视器所拥有,所以传统的纯软件虚拟化技术需要虚拟机监视器通过复杂的软件编程来解决这个矛盾。其中一种方法是通过打补丁修改操作系统内核源代码让其认知到工作在Guest OS(客人操作系统)虚拟操作系统模式下。另一种方法是需要对运行期间操作系统的某些硬件调用指令作二进制码翻译等。由于上述原因,传统的纯软件实现方式在测试、验证和维护每款新操作系统和相关补丁方面,付出了大量的时间和资金, 同时二进制码翻译需要消耗处理器的很多计算资源。纯软件虚拟化运行时的开销会造成系统运行速度较慢,有数据表明其引起的系统性能下降可能达5%~20%。
英特尔的硬件辅助虚拟化技术(Vanderpool Technology,VT技术)
0) this.style.zoom=zoom+'%';return false;" title="按此在新窗口浏览图片" src=/tech/UploadPic/2010108/20101082052578.jpg>
英特尔虚拟化技术是一种设计更简单、实施更高效和可靠的方法,是世界上首个x86平台的硬件辅助虚拟化解决方案。它对如何在不同的情形下分配给Guest OS想要的Ring特权级别作了很好的改进。x86因而可以为核心虚拟化处理提供芯片层支持,并可以在软件堆栈中为虚拟机监视器提供专用的空间。VT不需要复杂的软件工作环境。通过充分利用这些嵌入式硬件能力,独立软件厂商(ISV)可以减少其软件测试、验证和维护的要求,同时降低最终附加到用户身上的成本。
英特尔从去年的IDF开始,便在其处理器产品线中推广应用虚拟化技术,英特尔将其称为“VT”。包括Pentium D 900系列(925除外),基于Paxville的Xeon DP/MP,以及单核心的Pentium 4 662和672等。同时英特尔还计划在绝大多数的下一代处理器芯片,包括“Merom”移动处理器,“Conroe”桌面处理器和“Woodcrest”服务器处理器,以及新版本的Itanium 2中,集成这项新技术。虚拟技术已经在英特尔的芯片产品中无所不在。
英特尔虚拟化技术的主要特性和优势为:
专为虚拟机监视器提供的全新特权空间,可支持未经修改的操作系统和应用在专门为它们设计的环境中运行,从而简化硬件调用。 通过硬件底层指令集来支持虚拟机监视器与已安装Guest OS之间的切换,使得虚拟化技术更加简单、高效、可靠。 虚拟机监视器(VMM)和已安装的Guest OS处理器状态信息保留在专用内存地址空间中,这样可以缩短各个操作系统访问硬件之间的间隔时间, 同时提高了各个虚拟机上操作系统之间的安全隔离性。
早在大型机时代,IBM的VM/370就采用虚拟化技术来划分其硬件资源,提供给多用户使用。曾几何时,处理器层面的虚拟技术似乎是 RISC处理器的“专利”,但是随着AMD和Intel的积极参与,第一次将虚拟化技术推向了x86架构的处理器层面,在操作系统层面的虚拟化技术得到处理器的配合和支持后,将会使更多用户真正享受到虚拟化技术带来的服务器资源利用率的提升。
虚拟化有两种实施方式:传统的纯软件虚拟化方式和新的硬件辅助虚拟化方式。
在保护模式下,x86处理器一共有4个不同优先级,术语称为Ring,从Ring 0~Ring3。Ring 0的优先级最高,Ring 3最低。Ring 0用于操作系统内核, Ring 1和Ring 2用于操作系统服务,Ring 3用于应用程序。
位于Ring 0特权空间的操作系统可以优先访问各种硬件资源。传统的虚拟化技术是在Ring 0中运行一个称为虚拟机监视器(VMM)的软件中间层,以负责控制和排列各个分区访问硬件资源的优先顺序。它要求在软件堆栈的较高层运行操作系统——通常是在Ring 1或者与系统应用共用Ring 3。
由于操作系统缺省工作在Ring 0 特权级别,而现在Ring 0被虚拟机监视器所拥有,所以传统的纯软件虚拟化技术需要虚拟机监视器通过复杂的软件编程来解决这个矛盾。其中一种方法是通过打补丁修改操作系统内核源代码让其认知到工作在Guest OS(客人操作系统)虚拟操作系统模式下。另一种方法是需要对运行期间操作系统的某些硬件调用指令作二进制码翻译等。由于上述原因,传统的纯软件实现方式在测试、验证和维护每款新操作系统和相关补丁方面,付出了大量的时间和资金, 同时二进制码翻译需要消耗处理器的很多计算资源。纯软件虚拟化运行时的开销会造成系统运行速度较慢,有数据表明其引起的系统性能下降可能达5%~20%。
英特尔的硬件辅助虚拟化技术(Vanderpool Technology,VT技术)
0) this.style.zoom=zoom+'%';return false;" title="按此在新窗口浏览图片" src=/tech/UploadPic/2010108/20101082052578.jpg>
英特尔虚拟化技术是一种设计更简单、实施更高效和可靠的方法,是世界上首个x86平台的硬件辅助虚拟化解决方案。它对如何在不同的情形下分配给Guest OS想要的Ring特权级别作了很好的改进。x86因而可以为核心虚拟化处理提供芯片层支持,并可以在软件堆栈中为虚拟机监视器提供专用的空间。VT不需要复杂的软件工作环境。通过充分利用这些嵌入式硬件能力,独立软件厂商(ISV)可以减少其软件测试、验证和维护的要求,同时降低最终附加到用户身上的成本。
英特尔从去年的IDF开始,便在其处理器产品线中推广应用虚拟化技术,英特尔将其称为“VT”。包括Pentium D 900系列(925除外),基于Paxville的Xeon DP/MP,以及单核心的Pentium 4 662和672等。同时英特尔还计划在绝大多数的下一代处理器芯片,包括“Merom”移动处理器,“Conroe”桌面处理器和“Woodcrest”服务器处理器,以及新版本的Itanium 2中,集成这项新技术。虚拟技术已经在英特尔的芯片产品中无所不在。
英特尔虚拟化技术的主要特性和优势为:
专为虚拟机监视器提供的全新特权空间,可支持未经修改的操作系统和应用在专门为它们设计的环境中运行,从而简化硬件调用。 通过硬件底层指令集来支持虚拟机监视器与已安装Guest OS之间的切换,使得虚拟化技术更加简单、高效、可靠。 虚拟机监视器(VMM)和已安装的Guest OS处理器状态信息保留在专用内存地址空间中,这样可以缩短各个操作系统访问硬件之间的间隔时间, 同时提高了各个虚拟机上操作系统之间的安全隔离性。
赞助商链接