至于CPU,Intel和AMD的CPU都支持虚拟化功能。在2008年5月之后发布的KVM版本支持第二代的Intel EPT和AMD RVI虚拟化功能。现在KVM最新的升级版本还支持I/O虚拟化功能,而且还有ESX和Xen的最新功能。 从技术方面来看,KVM与VMware ESX是非常相似的。 Xen和Hyper-V采用了客户操作系统使用设备驱动来管理操作系统的机制,由于不包括设备驱动,所以减少了hypervisor本身占用的空间。而且,即使没有准备只针对hypervisor的驱动,还可以利用域0支持的驱动程序,这也是好处之一。 另一方面,因为VMware的hypervisor是独立的,所以要利用周边设备的话就需要专门针对ESX的驱动程序。虽然它支持主要服务器厂商的产品,但是没有准备周边设备的驱动程序,无法被ESX利用也是它的缺点之一。 因为KVM是与Linux内核集成的,所以可以说与ESX拥有相同的架构。但是KMV能够利用Linux驱动程序这一点与ESX有很大不同。能够利用庞大的Linux社区所提供的程序也是它的一大优势。同时,现在有很多制造商都在积极开发支持周边设备的Linux用驱动程序。 KVM的真正实力? 在KVM中,Qemu模拟器实现了半虚拟化 集成到Linux内核中的KVM采用了与一种被称为Qemu的模拟器相同的机制在虚拟化环境中处理I/O和进行CPU操作。 集成了KVM的Linux内核除了内核模式和用户模式意外,还提供了被认为是专门针对客户的虚拟化模式。这种方式能够处理除了I/O之外的很多操作。 可能对用户来说更在意的是KVM的性能吧。因为在一些KVM的网站社区中都刊载了Ubuntu的基准数据。根据这个数据,KVM的性能和Ubuntu的性能相差无几。这大概是因为利用了Intel VT和AMD-V等CPU虚拟化功能吧。 |