CPU的虚拟化技术是指将单台电脑软件环境分割为多个独立分区,每个分区均可以按照需要模拟电脑的一项技术。它的技术实质是通过中间层次实现计算资源的管理和再分配,使资源利用实现最大化。
CPU的虚拟化技术的优势为虽然虚拟化可以通过软件实现,但是CPU硬件支持的话,执行效率会大大提升,也可以支持64位操作系统。
扩展资料:
虚拟化技术的原理
虚拟机对真实计算环境进行抽象和模拟,VMM 需要为每个虚拟机分配一套数据结构来管理它们状态,包括虚拟处理器的全套寄存器,物理内存的使用情况,虚拟设备的状态等等。
VMM 调度虚拟机时,将其部分状态恢复到主机系统中。并非所有的状态都需要恢复,例如主机 CR3 寄存器中存放的是 VMM 设置的页表物理地址,而不是 Guest OS 设置的值。
主机处理器直接运行 Guest OS 的机器指令,由于 Guest OS运行在低特权级别,当访问主机系统的特权状态(如写 GDT寄存器)时,权限不足导致主机处理器产生异常,将运行权自动交还给 VMM。此外,外部中断的到来也会导致 VMM 的运行。
参考资料来源:中关村在线——T博士开讲 你不理解的CPU专业名词
2024-05-22 广告
cpu的虚拟化技术:
CPU的虚拟化技术可以单CPU模拟多CPU并行,允许一个平台同时运行多个操作系统,并且应用程序都可以在相互独立的空间内运行而互不影响,从而显著提高计算机的工作效率;
虚拟化技术与多任务以及超线程技术是完全不同的。多任务是指在一个操作系统中多个程序同时并行运行,而在虚拟化技术中,则可以同时运行多个操作系统,而且每一个操作系统中都有多个程序运行,每一个操作系统都运行在一个虚拟的CPU或者是虚拟主机上;而超线程技术只是单CPU模拟双CPU来平衡程序运行性能,这两个模拟出来的CPU是不能分离的,只能协同工作;
虚拟化技术也与目前VMware Workstation等同样能达到虚拟效果的软件不同,是一个巨大的技术进步,具体表现在减少软件虚拟机相关开销和支持更广泛的操作系统方面;
纯软件虚拟化解决方案存在很多限制。“客户”操作系统很多情况下是通过VMM(Virtual Machine Monitor,虚拟机监视器)来与硬件进行通信,由VMM来决定其对系统上所有虚拟机的访问。(注意,大多数处理器和内存访问独立于VMM,只在发生特定事件时才会涉及VMM,如页面错误。)在纯软件虚拟化解决方案中,VMM在软件套件中的位置是传统意义上操作系统所处的位置,而操作系统的位置是传统意义上应用程序所处的位置。这一额外的通信层需要进行二进制转换,以通过提供到物理资源(如处理器、内存、存储、显卡和网卡等)的接口,模拟硬件环境。这种转换必然会增加系统的复杂性。此外,客户操作系统的支持受到虚拟机环境的能力限制,这会阻碍特定技术的部署,如64位客户操作系统。在纯软件解决方案中,软件堆栈增加的复杂性意味着,这些环境难于管理,因而会加大确保系统可靠性和安全性的困难;
而CPU的虚拟化技术是一种硬件方案,支持虚拟技术的CPU带有特别优化过的指令集来控制虚拟过程,通过这些指令集,VMM会很容易提高性能,相比软件的虚拟实现方式会很大程度上提高性能。虚拟化技术可提供基于芯片的功能,借助兼容VMM软件能够改进纯软件解决方案。由于虚拟化硬件可提供全新的架构,支持操作系统直接在上面运行,从而无需进行二进制转换,减少了相关的性能开销,极大简化了VMM设计,进而使VMM能够按通用标准进行编写,性能更加强大。另外,在纯软件VMM中,目前缺少对64位客户操作系统的支持,而随着64位处理器的不断普及,这一严重缺点也日益突出。而CPU的虚拟化技术除支持广泛的传统操作系统之外,还支持64位客户操作系统;
两大CPU巨头Intel和AMD都想方设法在虚拟化领域中占得先机,但是AMD的虚拟化技术在时间上要比Intel落后几个月。Intel自2005年末开始便在其处理器产品线中推广应用Intel Virtualization Technology(Intel VT)虚拟化技术。目前,Intel已经发布了具有Intel VT虚拟化技术的一系列处理器产品,包括桌面平台的Pentium 4 6X2系列、Pentium D 9X0系列和Pentium EE 9XX系列;
这种VT技术并不是一个新鲜事物,市面上已经有一些软件可以达到虚拟多系统的目的,比如VMware workstation、Virtual PC等,使用这种技术就可以单CPU模拟多CPU并行,可以实现单机同时运行多操作系统。
在虚拟状态下有两种工作模式: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软件也会比这个价格要少很多。
其次,虚拟化技术与多任务以及超线程技术是完全不同的。在虚拟化技术中,可以同时运行多个操作系统,而且每一个操作系统中都有多个程序运行,每一个操作系统都运行在一个虚拟的CPU或者是虚拟主机上。
虚拟化技术也与目前VMware Workstation等同样能达到虚拟效果的软件不同,是一个巨大的技术进步,具体表现在减少软件虚拟机相关开销和支持更广泛的操作系统方面。
广告 您可能关注的内容 |