UTM README

The project's README from github.com/utmapp/UTM. As one markdown file: README.md.

UTM

Build

It is possible to invent a single machine which can be used to compute any computable sequence.

-- Alan Turing, 1936

UTM is a full featured system emulator and virtual machine host for iOS and macOS. It is based off of QEMU. In short, it allows you to run Windows, Linux, and more on your Mac, iPhone, and iPad. More information at https://getutm.app/ and https://mac.getutm.app/

UTM running on an iPhone
UTM running on a MacBook

Features

Additional macOS Features

UTM SE

UTM/QEMU requires dynamic code generation (JIT) for maximum performance. JIT on iOS devices require either a jailbroken device, or one of the various workarounds found for specific versions of iOS (see "Install" for more details).

UTM SE ("slow edition") uses a threaded interpreter which performs better than a traditional interpreter but still slower than JIT. This technique is similar to what iSH does for dynamic execution. As a result, UTM SE does not require jailbreaking or any JIT workarounds and can be sideloaded as a regular app.

To optimize for size and build times, only the following architectures are included in UTM SE: ARM, PPC, RISC-V, and x86 (all with both 32-bit and 64-bit variants).

Install

UTM (SE) for iOS: https://getutm.app/install/

UTM is also available for macOS: https://mac.getutm.app/

Development

macOS Development

iOS Development

License

UTM is distributed under the permissive Apache 2.0 license. However, it uses several (L)GPL components. Most are dynamically linked but the gstreamer plugins are statically linked and parts of the code are taken from qemu. Please be aware of this if you intend on redistributing this application.

Some icons made by Freepik from www.flaticon.com.

Additionally, UTM frontend depends on the following MIT/BSD License components:

Continuous integration hosting is provided by MacStadium

MacStadium logo

UTM (utmapp/UTM)

Searching Database…

36K ·GitHub
Что это такое?UTM — это полноценный системный эмулятор и хост виртуальных машин для iOS и macOS на основе QEMU, который позволяет запускать Windows, Linux и другие операционные системы прямо на вашем Mac, iPhone или iPad.
Это одно приложение или есть разные версии под разные задачи?Есть две редакции: полное приложение UTM с эмуляцией QEMU с ускорением через JIT и «UTM SE» (slow edition) — более легкая версия, которая использует потоковый интерпретатор и может быть установлена через sideload без джейлбрейка.
Нужно ли мне устройство с джейлбрейком, чтобы пользоваться UTM?Только для полной версии UTM на полной скорости, поскольку её ускорение JIT требует устройства с джейлбрейком на iOS или специального обходного решения для конкретной версии JIT; UTM SE полностью обходит это ограничение, используя медленный интерпретатор вместо JIT.
Чем я жертвую, если использую UTM SE вместо полной версии UTM?UTM SE работает медленнее эмуляции на основе JIT и включает только архитектуры ARM, PPC, RISC-V и x86 (32- и 64-битные), чтобы сборка оставалась компактной, тогда как полная версия поддерживает более 30 процессоров.
Работает ли это так же на iPhone/iPad, как на Mac?Нет: на macOS UTM может использовать Hypervisor.framework для виртуализации с аппаратным ускорением и запускать гостевые системы macOS через Virtualization.framework на macOS 12+, тогда как на iOS производительность зависит от доступности JIT, как описано выше.
Что с лицензией?Сам UTM распространяется по лицензии Apache 2.0, но он статически связывает плагины gstreamer под лицензией GPL и включает код, взятый из QEMU, поэтому те, кто распространяет его дальше, должны учитывать обязательства по лицензиям (L)GPL.
Какое оборудование может эмулировать UTM?Он эмулирует полноценные системы, включая MMU и устройства, для более чем 30 типов процессоров, таких как x86_64, ARM64 и RISC-V, с графикой VGA через SPICE/QXL, текстовым режимом терминала и поддержкой USB-устройств.
Чем UTM отличается от iSH?iSH эмулирует только терминал Linux в пользовательском режиме для запуска бинарников x86 Linux на iOS, тогда как UTM обеспечивает полную системную эмуляцию, так что можно загрузить целые гостевые операционные системы, например Windows или Linux.
Можно ли запустить сам macOS в качестве гостевой системы?Да, на macOS 12 и новее UTM может загружать гостевые системы macOS с помощью Virtualization.framework от Apple.
Creator
utmapp
Size
50.3 MB
Stars
36K
Age
7y
Commits · 90 Days