About this project
UTM is a full-featured system emulator and virtual machine host for iOS and macOS, built on QEMU. It enables users to run Windows, Linux, and other operating systems on Mac, iPhone, and iPad devices.
Key features include full system emulation (MMU, devices, etc.) via QEMU, support for 30+ processor architectures (x86_64, ARM64, RISC-V, and others), VGA graphics mode using SPICE and QXL, text terminal mode, USB device support, and JIT-based acceleration through QEMU TCG. The frontend is designed for macOS 11+ and iOS 11+ using native APIs, allowing users to create, manage, and run VMs directly from their device.
On macOS, UTM adds hardware-accelerated virtualization via Hypervisor.framework and QEMU, and can boot macOS guests using Virtualization.framework on macOS 12+.
UTM SE ("slow edition") is a variant that uses a threaded interpreter instead of JIT, similar to iSH's approach. It does not require jailbreaking or JIT workarounds and can be sideloaded as a regular iOS app, at the cost of performance. UTM SE includes ARM, PPC, RISC-V, and x86 architectures (32-bit and 64-bit).
The project is distributed under the Apache 2.0 license but incorporates several (L)GPL components, with gstreamer plugins statically linked and some code taken from QEMU. The frontend also depends on MIT/BSD-licensed components such as IQKeyboardManager, SwiftTerm, ZIP Foundation, and InAppSettingsKit.
Comments
0 Rating appears after 10 ratings
Sign in to join the discussion.