我的虚拟机使用的是 KVM 还是 QEMU?

我的虚拟机使用的是 KVM 还是 QEMU?

安装 Ubuntu 11.10 并将在 Ubuntu 11.04 上创建的 KVM 映像复制到新系统后,我注意到 Virt-manager 说它正在使用 QEMU 而不是 KVM。运行时virsh version它还显示Running hypervisor: QEMU 0.14.1

但是,当我运行kvm-ok它时,它显示INFO: /dev/kvm existsKVM acceleration can be used。此外,我的 VM 的 XML 文件明确指出它应该使用 KVM:<domain type='kvm'> <emulator>/usr/bin/kvm</emulator>

此外,还lsmod |grep kvm显示以下内容(当虚拟机运行时):

kvm_intel              61643  3
kvm                   383822  1 kvm_intel

那么我如何知道使用的是 KVM 还是 QEMU?为什么这些不同的命令会给出如此矛盾的输出?

答案1

因为 kvm 建立在 QEMU 之上,所以它只是一种硬件加速。

通过它您可以看到运行 VM 的实际进程是一个 kvm 进程。

ps xa| grep "[b]in/kvm"

答案2

http://en.wikipedia.org/wiki/Kernel-based_Virtual_Machine#Design

KVM 本身不执行任何模拟。相反,用户空间程序使用 /dev/kvm 接口来设置客户 VM 的地址空间,为其提供模拟 I/O,并将其视频显示映射回主机。QEMU 版本 0.10.0 及更高版本利用了这一点。

相关内容