虚拟化介绍
讨论的是计算机领域的虚拟化,我们这样定义虚拟化「虚拟化是将单一物理设备模拟为相互隔离的多个虚拟设备,同时保证这些虚拟设备的高效性」。这个概念的定义里还包含了对虚拟化的要求,也就是这里的隔离性(isolated)和有效性(efficient)。我们常说的hypervisor,有些书也把它称为VMM(virtual machine monitor)则是一个直接运行在物理硬体上的软体,它的功能就是管理物理硬体,以便在不同的虚拟机之间共享这些物理资源(cpu,内存,外设等等),既然hypervisor直接给物理外设打交道,那它当然需要运行在特权模式了,在过去没有virtualization extesion的情况下,guest os和guest application只能都运行在de-privileged模式。
虚拟化的种类
Type-0 Hardware virtualization 硬体虚拟化
最复杂的虚拟化实现技术。可以在宿主系统上创建一个硬体VM 来模拟所想要的硬体。每条指令都必须在底层硬体上进行模拟,因此速度会减慢100 倍甚至1000 倍。但优点是可以在一个ARM 处理器主机上运行为模拟系统 设计的操作系统,而不需要任何修改。 主要应用在硬体开发。