Intel VirtualTechnology(VT)既“虚拟化技术”
在2007-03-04 英特尔就已经发布了七款支持VT(Virtual Technology,技术的处理器——奔腾4 672,662,奔腾D920,930,940,950奔腾EE 955。
Intel Virtual Technology就是以前众所周知的“Vanderpool”技术,这种技术让可以让一个CPU工作起来就像多个CPU并行运行,从而使得在一部电脑内运行多个作业系统成为可能。
这种VT技术并不是一个新鲜事物,市面上已经有一些软体可以达到虚拟多系统的目的,比如VMware workstation、Virtual PC等,使用这种技术就可以单CPU模拟多CPU并行,可以实现单机运行多作业系统。
基本介绍
- 中文名intel virtual technology
- 实质虚拟化技术”
- 时间2007-03-04
- 发布公司英特尔
技术
virtual技术和多任务(multitasking)、HyperThreading超执行绪技术是完全不同的。多任务是指在一个作业系统中多个程式并行运行,而在虚拟技术中,你可以拥有多个作业系统运行,每一个作业系统中都有多个程式运行,每一个作业系统都运行在一个虚拟的CPU或者是虚拟主机上。而HyperThreading超执行绪只是在SMP系统(Symmetric Multi Processing)中单CPU模拟双CPU来平衡程式运行性能,这两个模拟出来的CPU是不能分离的,只能协同工作。
了,如果一个CPU支持HyperThreading和Virtualization技术的话,每一个虚拟CPU在各自的作业系统中都被看成是两个对称多任务处理的CPU。
虚拟技术可能让人联想到早期CPU上的“Virtual 8086”技术,这种V86模式技术是用来兼容早期的8086/8088处理器而设计的,最早出现在386机器上。使用V86模式你可以创建好几个并行虚拟8086计算机来运行多个DOS程式,同样道理,使用VT技术你也可以创建几个完整的虚拟电脑来运行几个完整的作业系统。
可是既然已经有VMware等这种可以达到虚拟目的的软体,为什幺我们还要努力来实现硬体CPU内部的虚拟技术呢?这是因为硬体CPU的虚拟技术有许多优势。支持虚拟技术的CPU带有多余的指令集来控制虚拟过程,通过这些指令集,控制软体VMM(Virtual Machine Monitor)会很容易提高性能,相比软体的虚拟实现方式会很大程度上提高性能。
工作原理
带有虚拟技术的处理器具有额外的指令集,叫做Virtual Machine Extensions,简称VMX。VMX给CPU带来了10个新的虚拟专用指令VMPTRLD, VMPTRST, VMCLEAR, VMREAD, VMWRITE, VMCALL, VMLAUCH, VMRESUME, VMXOFF and VMXON。
虚拟技术运行原理图
在虚拟状态下有两种工作模式root操作和非root操作。通常只有虚拟操作软体——Virtual Machine Monitor (VMM)能够运行在root操作模式下,而作业系统在虚拟机的顶层运行在非root操作模式下。运行在虚拟机顶层的软体也叫做“guest software”。
要进入虚拟模式,VMM需要执行VMXON指令来调入VMM软体,VMM软体使用VMLAUNCH指令来进入每一个虚拟机,使用VMRESUME指令来退出。如果想要退出虚拟模式,可以使用VMM运行VMXOFF指令。在图中的每个guest系统可以是不同的作业系统,运行自身的软体。
实现方法
根据intel的资料,intel虚拟技术的实现需要具有处理器、晶片组、BIOS、VMM软体的支持,这些特定的平台软体必须全部到位。性能方面要视不同的硬体和软体平台而定,intel虚拟技术支持的BIOS和VMM程式现在正在开发之中。
据我们所知,现在还没有支持虚拟技术的VMM软体,所以即使你买了一款支持VT技术的CPU,你还要等待Intel放出VMM软体才能使用上VT技术。还要等主机板厂商放出VMM支持的BIOS(或者保证使得现有的主机板BIOS支持虚拟技术)。
现在未知的就是,至关重要的虚拟技术VMM软体intel将是免费放出还是需要交费才可以。定价如何才合适呢?类似的软体虚拟技术,VMware Workstation 5价格为189~199美元之间,所以我们希望intel即使不免费提供VMM软体也会比这个价格要少很多。
intel虚拟技术承诺比VMWare软体虚拟技术性能要高的多,这个我们要等到VT VMM软体可用的时候才能够看个究竟了。