Search This Blog

2014-06-19

The Difference Between Qemu, KVM and qemu-kvm

I do not believe qemu itself (qemu NOT qemu-kvm) uses Hardware assisted virtualization. Think VT-x and other low level hardware compatibilities that enable essentially bare hardware performance.
Basically, hardware vendors will enable certain technologies (like an extra column in their memory paging table to map virtual memory addresses) and present that capability to hypervisors capable of HVM (Hardware Virtual Machine). Qemu itself did not have this during its initial development.

That being said, the most important part of this is that they are, and I think fully have, merged the codebase of KVM and qemu so eventually KVM will be obsolete and qemu will contain all of the bells and whistles that KVM has.

qemu-kvm from my understanding should support all of the most important hardware assisted virtualization specifications that are enabled on x86 processors.

The disadvantage of using pure KVM is that if you’re trying to emulate an x86 platform on a SPARC machine you’ll run into “interesting” problems because its trying to do low level conversion to differing underlying architectures.

Qemu-kvm is generally better because it determines basically what the underlying system is and figures out if you should be using HVM or just emulate everything fully.

References:
http://wiki.qemu.org/KVM
http://www.linux-kvm.org/page/FAQ#What_is_the_difference_between_KVM_and_QEMU.3F
http://blog.vmsplice.net/2011/03/should-i-use-qemu-or-kvm.html
http://en.wikipedia.org/wiki/Kernel-based_Virtual_Machine


No comments:

Post a Comment