55
edits
m (retap) |
|||
===System emulation under a hypervisor===
When a given hypervisor is enabled, instead of using TCG to ''emulate'' each vCPU present in the configured machine, QEMU will instead request the hypervisor run the vCPU,
Most of QEMU's hardware/system emulation still runs in usermode with a hypervisor enabled. On KVM, chipset emulation functionality is by default moved into the kernel, helping increase performance further.
! API !! Platforms !! Details
|-
| KVM (<kbd>-accel kvm</kbd>) || Linux || Linux's native hypervisor API, which works on x86_64, ppc, arm, aarch64, s390x and others. You can check for KVM support by running the command <kbd>kvm-ok</kbd>, or alternatively <kbd>ls /dev/kvm</kbd>.
|-
| HAXM (<kbd>-accel haxm</kbd>) || Windows, macOS, FreeBSD, Linux || A deprecated hypervisor layer written by Intel for x86 platforms. Not
|-
| WHPX (<kbd>-accel whpx</kbd>) || Windows || Windows Hypervisor Platform. Essentially the hypervisor core of Hyper-V
|-
| GVM/AEHD (<kbd>-accel kvm</kbd>) || Windows || Google-backed port of KVM to Windows, mainly used for the Android Virtual Device emulator, which is based on QEMU. Needs a [https://github.com/qemu-gvm/qemu-gvm fork] of QEMU patched to support it, and is rather unstable.
|-
| Hypervisor.framework (<kbd>-accel hvf</kbd>) || macOS || macOS specific hypervisor API.
|}
Note that you can also use <kbd>-M ...,accel=<hypervisor></kbd> to enable a given hypervisor
==Table of contents==
|