【发布时间】:2016-02-24 08:20:45
【问题描述】:
仿真和完全虚拟化(也称为硬件辅助虚拟化 (HVM))有什么区别?
从这个来源,不清楚是什么关系。
完全虚拟化或硬件辅助虚拟化 (HVM) 使用 来自主机 CPU 的虚拟化扩展来虚拟化来宾。 HVM 需要 Intel VT 或 AMD-V 硬件扩展。 Xen 项目 软件使用 Qemu 模拟 PC 硬件,包括 BIOS、IDE 磁盘 控制器,VGA图形适配器,USB控制器,网络适配器等。 虚拟化硬件扩展用于提高性能 仿真。完全虚拟化的来宾不需要任何内核 支持。这意味着 Windows 操作系统可以用作 Xen Project HVM 来宾。完全虚拟化的客人通常较慢 比半虚拟化来宾,因为需要仿真。
在接下来的书中,这些术语被视为同义词。
在一个极端情况下,您拥有完全虚拟化,或仿真,其中 虚拟机是硬件的软件模拟,无论是真实的还是 虚构的——只要有司机,没关系。 此类别中的产品包括 VMware 和 QEMU。
以下是描述仿真和 HWM 之间实际区别的文章的摘录。但是,我能看到的唯一区别是,虚拟化可以创建多个计算环境。
如果仿真需要付出这么大的代价,何必呢?因为我们可能想要 执行以下操作之一:
Run an OS on a hardware platform for which it was not designed. Run an application on a device other than the one it was developed for (e.g., run a Windows program on a Mac). Read data that was written onto storage media by a device we no longer have or that no longer works.
来源:Russell Kay
虚拟机具有以下优势:
They're compatible with all Intel x86 computers. They're isolated from one another, just as if they were physically separate. Each is a complete, encapsulated computing environment. They're essentially independent of the underlying hardware. They're created using existing hardware.
来源:Russell Kay
还有another article,只支持我的假设。
简而言之,仿真涉及使一个系统模仿另一个系统。为了 例如,如果一个软件运行在系统 A 而不是系统 B 上, 我们让系统 B “模拟” 系统 A 的工作。然后软件 在系统 A 的仿真上运行。
在同一个示例中,虚拟化将涉及采用系统 A 和 将其分成两台服务器,B 和 C。
那么让我们考虑 B=C,我们有仿真,不是吗?
【问题讨论】:
-
没有。仿真是使用软件来“仿真”硬件。硬件辅助虚拟化具有将真实硬件暴露给软件的硬件,而不是仿真。例如,您有一个物理设备,您可以使用 QEMU 将其模拟为多个设备。硬件辅助虚拟化实际上会添加新的寄存器来复制硬件组件,并添加保护机制让软件在不同的时间使用这个硬件设备。不同的软件会在不同的时间“直接”使用硬件。
标签: virtualization difference xen emulation hypervisor