云计算支撑技术:英特尔硬件虚拟化盘点
至顶网 12年04月05日 10:53 【转载】 作者:ZDNet 虚拟化 责任编辑:尤佳
导读:从上个世纪80年代开始,我们便为软件、硬件系统的可扩展性伤透了脑筋。数量繁多的硬件种类、软件平台,使得我们不得不进行多种系统之间的移植工作;而后来随着网络技术的发展和PC的发展,我们对本地计算处理速度和轻便性的要求也越来越高。
从上个世纪80年代开始,我们便为软件、硬件系统的可扩展性伤透了脑筋。数量繁多的硬件种类、软件平台,使得我们不得不进行多种系统之间的移植工作;而后来随着网络技术的发展和PC的发展,我们对本地计算处理速度和轻便性的要求也越来越高。在诸多可解决我们应用矛盾的技术中,云计算是目前最直接、最理想化的技术之一。云计算是虚拟化、公用计算、IaaS,PaaS、SaaS等概念混合演进并跃升的结果,而虚拟化则是云计算的技术基础。
虚拟化技术可以扩大硬件的容量,简化软件的重新配置过程。CPU的虚拟化技术可以单CPU模拟多CPU并行,允许一个平台同时运行多个操作系统,并且应用程序都可以在相互独立的空间内运行而互不影响,从而显著提高计算机的工作效率。这项技术在传统的大型机和Unix系统上早已普及,但由于桌面CPU大都使用的是X86架构,决定了在其之上使用硬件级虚拟化技术的难度。英特尔公司可谓是创造先河,将该技术运用到了桌面级产品上,用以提高CPU的性能和降低系统组建开销,这也符合英特尔目前的策略,即不再一味追求CPU的速度,而将焦点集中在CPU的效率上。
英特尔自2005年末开始便在其处理器产品线中推广应用Intel Virtualization Technology(Intel VT)虚拟化技术。VT虚拟化技术,通过一系列对英特尔处理器、芯片组以及支持核心平台架构的硬件辅助虚拟化功能的I/O设备的升级,解决了不断增长的虚拟化需求。
具体来说,英特尔虚拟化技术Intel VT由VT-x、VT-d、VT-c三大部分组成,包括针对IA-32体系架构处理器的VT-x技术、针对芯片组的VT-d技术以及针对网络的VT-c技术,另还有面向安腾处理器的VT-i虚拟化技术。VT-x是公认最好的指令集,向Intel多个型号的处理器中增加了迁移、优先级和内存管理能力。相对而言,VT-d指令集改善了Intel芯片对虚拟化的支持能力,允许芯片组可以完成向特定虚拟机中分配某些特定的I/O设备资源。VT-c引入了对某些I/O设备,如网络交换机的虚拟化支持。内存的控制和管理在基于硬件的虚拟化过程中扮演了举足轻重的作用。Intel VT-x指令集消除了基于软件的资源分配方式时需要VMM干预所带来的影响。而且在Extended Page Tables中加入了内存管理功能,而这个功能是不同的虚拟机之间完成处理器资源控制权转移时所必须的。