Are QEMU and KVM both kernel modules?
In VirtualBox, what are the equivalences to these kernel modules?
KVM is implemented as a number of kernel modules,
kvm and an architecture-specific module (
kvm-amd for AMD,
kvm-intel for Intel). QEMU is a user-space application which can use KVM if it’s available but doesn’t need it.
VirtualBox also has several kernel modules, the main one of which is
vboxdrv. This handles ring 0 duties for VirtualBox.
The two sets of kernel modules are similar but not identical, i.e. their features don’t overlap exactly. The virtualisation details in both setups are quite different.
(If you look through VirtualBox you’ll find references to KVM, but it doesn’t use KVM. It contains some source code referencing KVM, because it includes QEMU’s recompiler, but the KVM support is explicitly disabled. It also provides a KVM-compatible paravirtualisation interface for guests. You must take care never to use different virtual machine hosts with hardware acceleration in parallel, because they are liable to walk over each other and potentially crash the host — so you can run multiple VMs with QEMU and KVM, but don’t try running VMs with QEMU/KVM and VirtualBox simultaneously.)