永发信息网

kvm和QEMU有何区别?

答案:4  悬赏:0  手机版
解决时间 2021-11-09 22:13
kvm和QEMU有何区别?
最佳答案
KVM包括很多部件:首先,它是一个Linux内核模块(现在包括在主线中)用于转换处理器到一种新的用户 (guset)模式。用户模式有自己的ring状态集合,但是特权ring0的指令会陷入到管理器(hypervisor)的代码。由于这是一个新的处理器执行模型,代码不需要任何的改动。

除了处理器状态转换,这个内核模块同样处理很小一部分低层次的模拟,比如MMU注册(用于管理VM)和一部分PCI模拟的硬件。

在可预见的未来,Qemu团队专注于硬件模拟和可移植性,同时KVM团队专注于内核模块(如果某些部分确实有性能提升的话,KVM会将一小部分模拟代码移进来)和与剩下的用户空间代码的交互。

kvm-qemu可执行程序像普通Qemu一样:分配RAM,加载代码,不同于重新编译或者调用callingKQemu,它创建了一个线程(这个很重要);这个线程调用KVM内核模块去切换到用户模式,并且去执行VM代码。当遇到一个特权指令,它从新切换会KVM内核模块,该内核模块在需要的时候,像Qemu线程发信号去处理大部分的硬件仿真。

这个体系结构一个比较巧妙的一个地方就是客户代码被模拟在一个posix线程,这允许你使用通常Linux工具管理。如果你需要一个有2或者4核的虚拟机,kvm-qemu创建2或者4个线程,每个线程调用KVM内核模块并开始执行。并发性(若果你有足够多的真实核)或者调度(如果你不管)是被通用的Linux调度器,这个使得KVM代码量十分的小

当一起工作的时候,KVM管理CPU和MEM的访问,QEMU仿真硬件资源(硬盘,声卡,USB,等等)当QEMU单独运行时,QEMU同时模拟CPU和硬件。

Qemu使用模拟器;
是一个完整的可以单独运行的软件,它可以用来模拟机器,非常灵活和可移植。它主要通过一个特殊的'重编译器'将为特定处理器编写二进制代码转换为另一种。(也就是,在PPCmac上面运行MIPS代码,或者在X86 PC上运行ARM代码)
全部回答
给你一个链接http://blog.chinaunix.net/uid-16361381-id-211999.html
一个典型的KVM安装包括以下部件:
一个管理虚拟硬件的设备驱动,这个驱动通过一个字符设备/dev/kvm陈列它的功能
一个模拟硬件的用户空间部件,目前,这在用户空间处理,它是一个稍微改动过的QEMU进程。
Qemu使用模拟器; kvm使用处理器扩展实现虚拟化.
我要举报
如以上问答信息为低俗、色情、不良、暴力、侵权、涉及违法等信息,可以点下面链接进行举报!
大家都在看
为什么我的MSDN不能从上面直接复制粘贴?
提车的时候如果发现车子有问题怎么办?
开乡村小店营业执照如何写
求帮助习题二第1题的(2)、
酸菜肉丝面家常做法,正宗酸菜肉丝面怎么做
求fx组合chu专辑320K高音质mp3下载
解方程20-(-60+10x)=36+6x-20详细过程
生产车间发生火灾如何处理
玛卡与玛伽有什么区别?
吃辣条什么意思
经典塔罗牌怎么玩 ? 看着很深奥的意思完全没
滨海公路万家交通警察执法站地址在什么地方,
巧算数学题2+13+25+44+18+37+56+75用什么方法
建设银行兰州先锋路支行办公地址在什么地方,
四个大人蒸米需要多少米
推荐资讯
华为荣耀畅想5s换一个开机键需要多少钱
先锋建材的段平娥的企业管理目标是啥?
从广安门到连石湖公园怎么走
求三国杀OL新33(S3)台词(好像改了吧。。。
常温下,铁与醋酸反应生成醋酸亚铁和氢气的文
脸胖,怎么瘦,还有太圆了 又大又圆还有肉,
50.24乘以1/
谁对房地产行业的客户管理软件比较了解啊?
2016年2月16火车k283途径哪里
《骚》请问要咋读
急需摇滚歌曲,要新歌,好听的
这道题中氢氧根的浓度是怎么知道的?
正方形一边上任一点到这个正方形两条对角线的
阴历怎么看 ?