Xenserver 5.5 Windows 客户机

Xenserver 5.5 Windows 客户机

xenserver 5.5 update2 运行在 Pentium-D 上,没有 VT。说它不能在安装了 ESXi 4 的同一 CPU 上支持 Windows 客户机(未找到 HVM 等),并且 Win XP 运行良好。有什么想法吗?提前谢谢。

答案1

Windows 没有可用的 Xen 内核模块。Xen 只能在没有 VT 的情况下进行半虚拟化。要运行 Windows,Xen 需要 VT 来运行完全基于硬件的虚拟化。但我不知道 ESX 究竟是如何做到的。

答案2

ESXi 基本上通过虚拟化整个 Windows 客户机(而不是使用虚拟化扩展)来支持 Windows 客户机。VirtualBox 也会这样做。但是,VMware 和 VirtualBox 都不会在没有 VT-x/SVM 的情况下创建 64 位客户机。

答案3

ESX 可以处理这个问题,因为它可以使用二进制转换来运行未修改的 Windows 客户操作系统,而 Xen 没有此功能。

VMware 的二进制翻译技术是他们最初的虚拟化方法,因为他们的产品比硬件 x86 虚拟化早了很多年,而且他们一直支持运行未经修改的客户操作系统。基本上,VMware 虚拟机管理程序可以即时拦截潜在的有害客户指令并对其进行修改。Xen(以及 Hyper-V 和大多数其他虚拟机管理程序)不使用此类技术,他们的选项要么是半虚拟化,要么是硬件虚拟化。在这篇 Anandtech 文章

半虚拟化要求提前修改客户操作系统,以便将潜在有害的指令\操作替换为可在虚拟机中安全运行的代码。该术语有时被称为单个启蒙客户机或驱动程序,所有主要虚拟化产品都在一定程度上使用它 - 例如,VMware 在其最新版本中支持半虚拟化 SCSI 驱动程序,而 Hyper-V 的启蒙驱动程序是运行虚拟机的最佳性能级别所必需的。

硬件虚拟化使 CPU 能够处理原本必须通过二进制转换或半虚拟化处理的指令,并允许虚拟机管理程序运行未修改的客户机。尽管在此过程中出现了一些小问题,但当前的硬件虚拟化实现允许(大多数)客户机操作系统以接近裸机的速度运行。

相关内容