KQEMU refers to the Kernel mode of QEMU or Quick Emulator. QEMU is an open-source hardware virtualization program that is capable of emulating the computer’s CPU through a binary system. Using QEMU also allows users to create and run several guest operating systems while the hardware or CPU emulation and/or virtualization is taking place. By using QEMU under kernel mode, it now becomes KQEMU and it results to faster virtualization. This is especially useful when people want to emulate simple processes like those at the user level only. In most cases, emulation of the CPU at the user level allows for easy compilation of various applications into one system or architecture. With the use of kernel mode, the QEMU virtualization process can run faster and smoother.
KQEMU works to accelerate the virtualization process of QEMU by means of allowing the use of some operations under the guest mode. This is done on the same CPU that is being virtualized. With the kernel mode in progress, the emulation and virtualization will also run faster. The use of KQEMU or the kernel mode option is born out of necessity since many computer experts have complained that QEMU runs pretty slow.
KQEMU shares similar capabilities with KVM or kernel-based virtual machines. The major differences include KQEMU’s unsupported status for Linux’ upstream levels. Support for QEMU is only up to Ubuntu 9.04 versions. Later versions like the 10.04 Ubuntu does not work well with KQEMU anymore. This issue is mainly due to the fact that the kernel mode in QEMU does not have its own maintainer and it is said that its codes are also a source of conflict for the KVM path. For these critical cases, using KVM is the best choice for virtualization. Otherwise though, KQEMU provides fast enough virtualization and can also be applied for CPU or hardware that has no VT extensions.