QEMU is a generic and open source machine emulator and virtualizer, while using it as a machine emulator it can run OSes and programs.QEMU is a hosted virtual machine monitor: It emulates CPUs through dynamic binary translation and provides a set of device models, enabling it to run a variety of unmodified guest operating systems. It also can be used together with KVM in order to run virtual machines at near-native speed. Moreover, QEMU can also be used purely for CPU emulation for user-level processes, allowing applications compiled for one architecture to be run on another.