半虚拟化和全虚拟化最大的区别:

半虚拟化是需要更改系统内核才得以实现虚拟化,而完全虚拟化是不需要修改内核。

 

Xen虚拟机有两种运行方式:完全虚拟化(full virtualization)和半虚拟化(para virtualization)

 

完全虚拟化提供底层物理系统的全部抽象化,且创建一个新的虚拟系统,客户机操作系统>可以在里面运行。不需要对客户机操作系统或者应用程序进行修改(客户机操作系统或者应用程序像往常一样运行,意识不到虚拟环境的存在)。半虚拟化需要对运行在虚拟机上的客户机操作系统
进行修改(这些客户机操作系统会意识到它们运行在虚拟环境里)并提供相近的性能,但半虚拟化的性能要比完全虚拟化更优越。


Xen是一款虚拟化软件,支持半虚拟化和完全虚拟化。它在不支持VT技术的cpu上也能使用,但是只能以半虚拟化模式运行。

VMware是一款完全虚拟化软件。完全虚拟的弱点是效率不如半虚拟化的高

半虚拟化系统性能可以接近在裸机上的性能。

 

通过虚拟化工具把cpu,内存,硬盘等真实硬件资源给模拟成更少的虚拟硬件资源

 

为什么要虚拟化?
是硬件资源使用率最大化,云计算领域

 

 

KVM优势


KVM是Linux内核的一部分,KVM在Linux内核内部部署,可以很容易控制虚拟化进程。 KVM更加灵活。由于操作系统直接和整合到Linux内核中的虚拟化管理程序交互,所以在任何场景下都可以直接和硬件进行交互,而不需要修改虚拟化的操作系统。


KVM在Ret Hat的大力支持下,将会使虚拟化技术的后来者——KVM同Xen一样功能齐全。

 

 

KVM缺点


KVM不如Xen技术成熟,并且缺少某些关键特性,如动态迁移和泛虚拟化支持。

 

发展趋势的看法


Xen同时支持全虚拟化和半虚拟化(修改过的客户机能有更好的性能). KVM当前不支持半虚拟化。而且KVM就是所有新生技术在发展中都会面临的难题:技术不成熟。

KVM的出现不过三四年时间,在可用资源、平台支持、管理工具、实施经验方面不能与Xen相比。目前KVM还缺少某些关键特性,例如存储的动态迁移。性能方面,Xen支持一个客体虚拟机的数量呈线性增长,可以支持30个以上工作负载同时运行。

KVM随着工作负载的增加性能逐渐下降。所以就目前来看,Xen在各方面都占有优势。同时,Xen成为 Linux 基金会项目。但是KVM得到了Ret Hat的大力支持,将会使其功能更加齐全。