[LINUX] Faster emulation with QEMU on ARM CPUs

When you want to emulate a Linux application

If the host OS is also Linux, you can use QEMU User Mode Emulation to emulate fairly quickly. Since it does not emulate hardware, Linux for ARM cannot be run. For Ubuntu / Debian, ʻapt-get install binfmt-support qemu-user-static` will automatically run Linux apps for ARM.

When you want to emulate an OS for ARM

When the host CPU is not ARM

Increase your patience and endure the slowness

When the host CPU is 32bit ARM and the guest CPU is 64bit ARM

Increase your patience and endure the slowness

When the host CPU is 32bit ARM and the guest CPU is also 32bit ARM

With qemu-system-arm -machine virt -cpu host -enable-kvm, you can get overwhelming speed with KVM. However, the host CPU must include virtualization features such as Cortex A15.

When the host CPU is 64bit ARM and the guest CPU is also 64bit ARM

With qemu-system-aarch64 -machine virt -cpu host -enable-kvm, you can achieve overwhelming speedup with KVM.

When the host CPU is 64bit ARM and the guest CPU is 32bit ARM

With qemu-system-aarch64 -machine virt -cpu host, aarch64 = off -enable-kvm, you can overwhelmingly speed up with KVM. ** When using qemu-system-arm with a 64-bit ARM CPU, high speed by KVM is not possible at present **.

Recommended Posts

Faster emulation with QEMU on ARM CPUs
Run Linux on ARM architecture with QEMU
Build Python3 for Windows 10 on ARM with Visual Studio 2019 (x86) on Windows 10 on ARM