QEMU

From Emulation General Wiki
Revision as of 16:27, 1 September 2024 by Phredreeke (talk | contribs) (UTM: I added a short section on UTM for now. May want to change it to a link whenever UTM gets its own page)
(diff) ← Older revision | Latest revision (diff) | Newer revision → (diff)
Jump to navigation Jump to search
Quick Emulator
Qemu.png
Developer(s) Fabrice Bellard et al.
Latest version 9.1.0 [+]
Active Yes
Platform(s) Windows
Linux
macOS
Android (port)
Architecture(s) x86_64, ARM, PowerPC, SPARC, MIPS, Itanium
Type Hypervisor
Emulates x86 CPUs
Various PowerPC machines
Various ARM devices
SPARC
MicroBlaze
LatticeMico32
CRIS
OpenRISC
Programmed in C
Website qemu.org
Support ($) PayPal
Source code Official repository
GitHub mirror

QEMU (an acronym for Quick Emulator) is a general-purpose computer emulator and hypervisor originally developed by Fabrice Bellard in 2003. It emulates a wide range of architectures beyond x86, and has been used in Android emulation both officially and unofficially; it's also well-known in the server industry for its handling of virtual machines using KVM (and more recently libvirt), and is the choice of the VFIO community (running Windows in a virtual machine with a dedicated graphics card for gaming). QEMU is also the first project to implement usermode emulation on Linux, which allows one architecture to run software for another as if it were native.

Download[edit]

Windows Linux macOS Recommended Builds
Stable/Distro-dependent

Windows 32-bit and 64-bit Builds
Compiled by Stefan Weil
Android Limbo Port
Based on QEMU 5.1.0
Linux FreeBSD qemu Package Listing
at pkgs.org

Overview[edit]

QEMU can act as an emulator for multiple architectures, or as a hypervisor if running an x86 guest on an x86 host. As a hypervisor, it can utilize KVM on Linux or Intel HAXM on Windows for hardware acceleration of virtual machines, which can result in near-native performance. As an emulator, it uses dynamic recompilers, which makes it much faster than Bochs. Its maturity and performance have resulted in it being used as a basis for emulators for the Xbox, PS4, and iOS. QEMU completely lacks a GUI and must be run from the command-line. The official QEMU wiki includes links to various dedicated frontends such as Gnome Boxes, including those for Windows users such as QTemu. Linux users may prefer to instead use a virtual machine management system such as virt-manager that controls QEMU/KVM.

UTM[edit]

UTM is a frontend for virtual machines running on macOS (x86_64 and Apple Silicon) and iOS. It is built on QEMU and Apple's own virtualization framework (the latter only on Apple Silicon Macs). It's capable of both emulation as well as virtualizing operating systems that run on the same architecture as the host. UTM SE ("slow edition", for iOS devices that haven't been jailbroken) version uses a threaded interpreter which performs better than a traditional interpreter but still slower than JIT used on macOS and jailbroken iOS devices.[1]

External links[edit]