QEMU is a fast, cross-platform Open Source machine emulator which can emulate a huge number of hardware architectures for you. QEMU lets you run a complete unmodified operating system (VM Guest) on top of your existing system (VM Host Server).
You can also use QEMU for debugging purposes - you can easily stop your running virtual machine, inspect its state and save and restore it later.
QEMU consists of the following parts:
processor emulator (x86, PowerPC, Sparc ...)
emulated devices (graphic card, network card, hard drives, mice ...)
generic devices used to connect the emulated devices to the related host devices
descriptions of the emulated machines (PC, Power Mac ...)
debugger
user interface used to interact with the emulator
As a virtualization solution, QEMU can be run together with the KVM kernel module. If the VM Guest hardware architecture is the same as VM Host Server's architecture, QEMU can take advantage of the KVM acceleration.