虚拟化的概念近年来变得非常流行。原因很简单:虚拟化可以最大限度地利用资源,为企业节省成本。目前,市场上比较流行的虚拟架构主要有KVM、XEN和VMware。其中KVM和XEN是免费开源的,而VMware是付费的。因此,这次我只比较KVM和XEN的区别。
如果简单地对KVM和XEN进行分类的话,KVM是一种完全虚拟化技术,也称为硬件辅助虚拟化技术(FullVirtualization)。相反,XEN是半虚拟化技术,也叫半虚拟化技术。
全虚拟化技术(左)和半虚拟化技术(右)
KVM在虚拟机和硬件之间增加了一个软件层——Hypervisor,或者虚拟机管理器(VMM),KVM的虚拟机管理程序直接运行在物理硬件上。XEN基于全虚拟化。它修改了客户操作系统并添加了特殊的API,使客户操作系统能够集成虚拟化代码。这种方法不需要重新编译或引起陷阱,因为操作系统本身能够与虚拟进程很好地配合。
KVM架构
也有人将KVM架构分解为两部分:KVM驱动程序,它是linux内核的一个模块,以及Qemu,用于模拟虚拟化。机器的用户空间组件提供I/O设备模型和访问外设的方式。它最大的优点是KVM与Linux内核集成,因此速度更快。同时KVM是完全虚拟的,所以不需要区分pv和hvm。它可以安装各种Linux发行版和Windows发行版,并且可以在支持虚拟化的系统上运行。关于扩展的X86和X86-64硬件架构。
XEN其实比KVM更早出现。它由剑桥大学开发,是一个开源虚拟机监视器。半虚拟化架构决定了它注定不是一个真正的虚拟机,而是一个独立运行内核的例子。它还区分了Xen+pv+和Xen+hvm,其中pv仅支持Linux,而hvm支持Windows系统。此外,XEN还具有更好的可用资源、平台支持、可管理性、实施、支持实时迁移和性能基准等优点。
参考资料:
上一篇:kvm虚拟化软件
下一篇:kvm虚拟化管理平台