# About QEMU

QEMU is a generic and open source machine emulator and virtualizer.

QEMU can be used in several different ways. The most common is for System Emulation, where it provides a virtual model of an entire machine (CPU, memory and emulated devices) to run a guest OS. In this mode the CPU may be fully emulated, or it may work with a hypervisor such as KVM, Xen or Hypervisor.Framework to allow the guest to run directly on the host CPU.

The second supported way to use QEMU is User Mode Emulation, where QEMU can launch processes compiled for one CPU on another CPU. In this mode the CPU is always emulated.

QEMU also provides a number of standalone command line utilities, such as the `qemu-img` disk image utility that allows you to create, convert and modify disk images.

- Supported build platforms
  - Supported host architectures
  - Linux OS, macOS, FreeBSD, NetBSD, OpenBSD
  - Windows
- Emulation
  - Semihosting
  - TCG Plugins
  - Other emulation features
- Deprecated features
  - System emulator command line arguments
  - `-runas` (since 9.1)
  - User-mode emulator command line arguments
  - QEMU Machine Protocol (QMP) commands
  - Host Architectures
  - System emulator CPUs
  - System emulator machines
  - Backend options
  - Device options
  - Backwards compatibility
  - Migration
- Removed features
  - System emulator command line arguments
  - User-mode emulator command line arguments
  - QEMU Machine Protocol (QMP) commands
  - QEMU Machine Protocol (QMP) events
  - Human Monitor Protocol (HMP) commands
  - Host Architectures
  - Guest Emulator ISAs
  - System emulator CPUS
  - System accelerators
  - System emulator machines
  - linux-user mode CPUs
  - TCG introspection features
  - System emulator devices
  - Related binaries
  - Block devices
  - Tools
  - QEMU guest agent
- License