What's the differences between Xen, QEMU and KVM?

Xorax picture Xorax · Apr 25, 2012 · Viewed 49.7k times · Source

I know QEMU is used by Xen, and KVM is a fork of QEMU.

So, KVM includes that Xen adds to QEMU ? What is the name ?

Thanks

Answer

Todd Deshane picture Todd Deshane · Apr 26, 2012

QEMU is a powerful emulator, which means that it can emulate a variety of processor types.

Xen uses QEMU for HVM guests, more specifically for the HVM guest's device model. The Xen-specific QEMU is called qemu-dm (short for QEMU device model)

QEMU uses emulation; KVM uses processor extensions (HVM) for virtualization.

Both Xen and KVM merge their various functionality to upstream QEMU, that way upstream QEMU can be used directly to accomplish Xen device model emulation, etc.

Xen is unique in that it has paravirtualized guests that don't require hardware virtualization.

Both Xen and KVM have paravirtualized device drivers that can run on top of the HVM guests.