KVM和XEN虚拟化

undefined

KVM和Xen虚拟化有什么区别

KVM:KVM是轻量级的虚拟化管理程序模块,该模块主要来自Linux内核;KVM的虚拟化需要硬件支持,如具有VT功能的Intel CPU和具有AMD-V功能的AMD CPU,KVM只能在具有虚拟化支持的CPU上运行。

Xen:Xen是Linux下的虚拟化解决方案,Xen的实现是基于支持Xen功能的kernel,在Xen控制下的kernel,称之为Domain0,使用kernel启动的机器可以使用qemu软件,虚拟出多个系统。

Xen和KVM优缺点对比

KVM虚拟化

undefined

KVM的内核模块叫做kvm.ko,实现对Linux的CPU和内存虚拟化,是Linux的一个进程,负责VCPU和内存的分配,而其他设备的虚拟就交给了qemu。qemu运行在用户空间,KVM运行在内核,两者通过/dev/kvm进行交互,KVM仅支持全局虚拟化。

Xen虚拟化

undefined

Xen是一个直接运行在计算机硬件之上的用以替代操作系统的软件层,Xen能够在计算机硬件上并发的运行多个客户操作系统(Guest OS)。

关于是否写入Linux内核

KVM已经被Linux核心组织写入Linux内核。而Xen是一个外部的Hypervisor程序(虚拟机管理程序),它能够控制虚拟机和给多个客户机分配资源,在KVM被写入Linux内核后,估计Xen很难再被写入内核。而KVM是Linux的一部分, 可使用通常的Linux调度器和内存管理,KVM更小更易使用。

KVM和Xen区别对比表

对比项 Xen KVM
问世时间 2003年 2007年
支持企业 Citrix、Novell、Oracle、Sun、Ret Hat(RHEL5)和Virtual Iron Redhat、Ubuntu等
支持的虚拟化技术 全虚拟化、半虚拟化 全虚拟化
支持架构 x86、IA64和AMD、Fujitsu、IBM、Sun等公司的ARM,以及x86/64 CPU商家和Intel嵌入式的支持 支持虚拟化的CPU
支持操作系统 UNIX、Linux和Microsoft Windows UNIX、Linux和Microsoft Windows
动态迁移 支持 支持(以前不支持)
内核支持 需要对内核打补丁 内置在内核中

原文地址

posted @ 2021-07-19 23:41  蔚蓝的海洋  阅读(277)  评论(0编辑  收藏  举报