A Probably Inaccurate History Of LibVirt, KVM and QEMU09 May 2016
A while ago I was explaining the difference between QEMU, KVM and LibVirt, and I ended up by emailing this nonsense. I don’t claim it’s accurate, it certainly isn’t. It’s probably not even funny. Enjoy :).
In the beginning there was QEMU, but it was slow and the people grieved.
Then KVM was forked from QEMU with a kernel module to use the CPU’s virtualisation features to work much faster and there was much rejoicing. Linus also rejoiced and welcomed KVM’s kernel module into the mainline kernel.
But the people did not rejoice, as they were mostly using Sun’s VirtualBox (also forked from QEMU).
QEMU awoke from its slumber and joined with KVM and their union caused almost no rejoicing, in fact I am not convinced anyone really noticed.
But the System Administrators were still dissatisfied and complained that there should be standardisation of commands across different hypervisors. And thus LibVirt was born and the System Administrators rejoiced.
Yet still the people used VirtualBox. But lo! The evil Oracle slew the Sun and VirtualBox moved into darkness, and there was much gnashing of teeth and wearing of sackcloth; although this was generally considered a step forwards from the t-shirts that they usually wore.
But still the people could not use QEMU-KVM, without issuing complex incantations, and so Virt-Manager was born and finally the people rejoiced, with much clicking of mice.