正如其他地方所建议的那样,VMWare ESXi是免费的裸机虚拟机管理程序,其中“裸机”意味着您最终加载的内容少于完整的操作系统。
Xen还具有HVM模式,其中使用硬件级虚拟化; 在此模式下,它可以运行Windows来宾。Xen显然有一个“裸机”虚拟机管理程序 - 甚至Dom0操作系统都在其下运行 - 但它配置和维护非常复杂,并且对可以在非HVM域(其中的Dom0)下运行的内核施加限制,通过硬件访问其他人并具有管理权限的主要内核是一个)。HVM需要CPU和主板,并支持硬件虚拟化; 请参阅Xen wiki的HVM兼容主板列表。
也就是说,您可能会发现KVM更有趣。KVM不是使用Linux来管理单独的专有管理程序内核(与ESX一样),而是将管理程序功能构建到Linux本身。“裸机”是如何取决于你的解释 - 但如果你的主机运行KVM只是一个40MB的initrd,除了kvm + libvirt +相关的发动机之外什么都没有(比如Red Hat的oVirt之类),你呢?我得到的东西在实践中并不完全不同于ESX。KVM的用户空间组件源自QEMU,它使它具有各种强大和灵活性 - 你不一定需要桌面,但在模拟嵌入式系统(例如,只有串行I / O和没有VGA适配器)时非常有趣,设置复杂的COW图像链,用于后端存储,或设置有趣的虚拟网络拓扑。与Xen HVM一样,KVM需要硬件加速。KVM运行时对Windows客户端(包括Vista)的要求不高,但目前只提供适用于Windows的半虚拟网络驱动程序; 其他驱动程序需要使用模拟硬件,这有点慢。(Qumranet正在为Windows的其他驱动程序开发提供资金,因此期望最终看到它们。较新版本的Linux内核还有许多其他KVM兼容的半虚拟驱动程序 - 用于磁盘I / O,时钟和其他设备 - 包括上游)。
对于桌面使用,VirtualBox非常适合,但它根本不适合“裸机”使用。由于缺乏libvirt支持,我也认为它不适合QA自动化使用。VirtualBox在其“客户实用程序”中有一个paravirt视频驱动程序,它将提供自动窗口调整大小和有时多错误的“无缝模式”,其中客户的窗口将显示在主机之间,从而使(理论上)获得更加集成的体验。
如果您使用的“主操作系统”不是专为虚拟化而构建的,那么您就不会进行“裸机”虚拟化,而是采用简约的完全“裸机”解决方案,其中主要的(微)内核控制是严格构建的,如果您希望Windows桌面显示在同一块硬件上,虚拟化将会非常不理想。如果您想要的不是“裸机”而是硬件辅助虚拟化,那么这里提出的所有内容都提供了 - 尽管对于VirtualBox,它是一个可选复选框的配置选项; 默认情况下,它使用更传统的方法。