KVM和Xen的区别

Linux虚拟化技术的用户目前有两种免费的开源管理程序可以选择:
Xen和KVM。

KVM是一个轻量级的虚拟化管理程序模块,该模块主要来自于Linux内核。
KVM是一个全虚拟化的解决方案。可以在x86架构的计算机上实现虚拟化功能。但KVM需要CPU中虚拟化功能的支持,只可在具有虚拟化支持的CPU上运行,即具有VT功能的Intel CPU和具有AMD-V功能的AMD CPU。

Xen 也是Linux下的一个虚拟化解决方案,也将很快被编入内核中。Xen的实现方法是运行支持Xen功能的kernel,这个kernel是工作在 Xen的控制之下,叫做Domain0,使用这个kernel启动机器后,你可以在这个机器上使用qemu软件,虚拟出多个系统。

KVM由以色列公司Qumranet开发,已经被Linux核心组织放入Linux的内核里面,其使用的x86处理器至少需要包含其中一项硬件辅助虚拟化技术(Intel-VT或AMD-V)。

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

此外,Xen同时支持全虚拟化和准虚拟化(需要修改客户机操作系统,而修改过的客户机操作系统能有更好的性能),KVM当前不支持准虚拟化。

Xen的缺点是如果你需要更新Xen的版本,你需要重新编译整个内核,而且,稍有设置不慎,系统就无法启动。
相比较,KVM就简化的多了。它不需要重新编译内核,也不需要对当前kernel做任何修改,它只是几个可以动态加载的.ko模块。它结构更加精简、代码量更小。所以,出错的可能性更小。并且在某些方面,性能比Xen更胜一筹。

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

参考:虚拟化 - KVM 和 Xen 比较



作者:小小少年Boy
链接:https://www.jianshu.com/p/b245b172a720

  • 0
    点赞
  • 8
    收藏
    觉得还不错? 一键收藏
  • 1
    评论
评论 1
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值