Is my VM using KVM or QEMU?
After installing Ubuntu 11.10 and copying my KVM images which were created on Ubuntu 11.04 over to the new system, I notice that Virt-manager says it's using QEMU and not KVM. Also when running virsh version
it says Running hypervisor: QEMU 0.14.1
.
However, when I run kvm-ok
it says INFO: /dev/kvm exists
and KVM acceleration can be used
. Also, the XML file of my VM clearly states it should use KVM: <domain type='kvm'>
<emulator>/usr/bin/kvm</emulator>
.
Furthermore, lsmod |grep kvm
shows the following (when the VM is running):
kvm_intel 61643 3
kvm 383822 1 kvm_intel
So how do I know if KVM or QEMU is being used? And why am I getting such contradictory output of these different commands?
Solution 1:
Because kvm builds on top of QEMU, it's just a hw acceleration.
With this you can see that the actual process running your VM is a kvm process.
ps xa| grep "[b]in/kvm"
Solution 2:
http://en.wikipedia.org/wiki/Kernel-based_Virtual_Machine#Design
By itself, KVM does not perform any emulation. Instead, a user-space program uses the /dev/kvm interface to set up the guest VM's address space, feeds it simulated I/O and maps its video display back onto the host's. QEMU versions 0.10.0 and later make use of this.