![云图·云途:云计算技术演进及应用](https://wfqqreader-1252317822.image.myqcloud.com/cover/686/41398686/b_41398686.jpg)
3.2 虚拟化的结构模型
一般来说,虚拟环境由三部分组成:虚拟机、虚拟机监控器(Virtual Machine Monitor,VMM,亦称为Hypervisor)、硬件。在没有虚拟化的情况下,操作系统管理底层物理硬件,直接运行在硬件之上,构成一个完整的计算机系统。而在虚拟化环境里,VMM取代了操作系统的管理者地位,成为真实物理硬件的管理者。同时VMM向上层的软件呈现出虚拟的硬件平台,“欺瞒”着上层的操作系统。而此时的操作系统运行在虚拟平台之上,管理着虚拟硬件,但它自认为是真实的物理硬件,如图3-2所示。
![](https://epubservercos.yuewen.com/9E8D54/21570843708787206/epubprivate/OEBPS/Images/54_01.jpg?sign=1738953137-ZrC82IVl2YhcJU9Ogox1vlC7zdnRO1KQ-0-0c711c9541b7051ef5f6ab4f26380402)
图3-2 虚拟环境构成
通常虚拟化的实现结构分为三类:Hypervisor模型(Hypervisor VMM)、宿主模型(OS-hosted VMM)以及混合模型(Hybrid VMM)。
3.2.1 Hypervisor模型
在Hypervisor模型中,虚拟化平台是直接运行在物理硬件之上,无需主机操作系统[安装虚拟化平台的物理计算机称为“主机(Host)”,它的操作系统就称为“主机操作系统”(Host OS)](见图3-3)。在这种模型中,VMM管理所有的物理资源,如处理器、内存、I/O设备等,另外,VMM还负责虚拟环境的创建和管理,用于运行客户机操作系统[在一个虚拟机内部运行的操作系统称为“客户机操作系统(Guest OS)”]。由于VMM同时具有物理资源的管理功能和虚拟化功能,虽然物理资源的虚拟化效率会更高一些,但同时也增加了VMM的工作量,因为VMM需要进行物理资源的管理,包括设备的驱动,而设备驱动开发的工作量是很大的。
![](https://epubservercos.yuewen.com/9E8D54/21570843708787206/epubprivate/OEBPS/Images/54_02.jpg?sign=1738953137-z8eyUFfV9fWBrUtIWN4piDMWdsB5kU0F-0-4b31c71a6014b6f9cf39d8a82db22139)
图3-3 Hypervisor模型
优点:效率高。
缺点:只支持部分型号设备,需要重写驱动或者协议。
典型产品:VMware ESX server3、KVM。
3.2.2 宿主模型
在宿主模型中,虚拟化平台是安装在主机操作系统之上的。VMM通过调用主机操作系统的服务来获得资源,实现处理器、内存和I/O设备的虚拟化。VMM创建出虚拟机之后,通常将虚拟机作为主机操作系统的一个进程参与调度(见图3-4)。宿主模型的优缺点正好与Hypervisor模型相反。宿主模型可以充分利用现有操作系统的设备驱动程序,VMM无需为各类I/O设备重新实现驱动程序,可以专注于物理资源的虚拟化。但是由于物理资源是由主机操作系统控制,VMM需要调用主机操作系统的服务来获取资源进行虚拟化,而这些系统服务在设计开发之初并没有考虑虚拟化的支持,因此对虚拟化的效率会有一些影响。
优点:充分利用现有OS的Device Driver(设备驱动程序),无需重写;物理资源的管理直接利用Host OS来完成。
缺点:效率不够高,安全性一般,依赖于VMM和Host OS的安全性。
典型产品:VMware server、VMware workstation、virtual PC、virtual server。
3.2.3 混合模型
顾名思义,混合模型就是上述两种模型的混合体。混合模式在结构上与Hypervisor模型类似,VMM直接运行在裸机上,具有最高特权级。与Hypervisor模型的区别在于:混合模式的VMM相对要小得多,它只负责向客户机操作系统提供一部分基本的虚拟服务,例如CPU和内存,而把I/O设备的虚拟交给一个特权虚拟机(Privileged VM)来执行,由于充分利用了原操作系统的设备驱动,VMM本身并不包含设备驱动(见图3-5)。
![](https://epubservercos.yuewen.com/9E8D54/21570843708787206/epubprivate/OEBPS/Images/55_01.jpg?sign=1738953137-k7K87YSWqFIn4JzESOoOTsvRz8DXdtdY-0-38fdfa9482abac09e67d94da7c67a1ea)
图3-4 宿主模型
![](https://epubservercos.yuewen.com/9E8D54/21570843708787206/epubprivate/OEBPS/Images/55_02.jpg?sign=1738953137-KqQhvbRZwNU2qSL23PMRdv9aW6gjnVj0-0-95ea9ad8ffee9fc9df295943d628058f)
图3-5 混合模型
优点:集合了上述两种模型的优点。
缺点:经常需要在VMM与特权OS之间进行上下文切换,开销较大。
典型产品:Xen。