Skip to content

Latest commit

 

History

History
69 lines (44 loc) · 5.95 KB

README.ru.md

File metadata and controls

69 lines (44 loc) · 5.95 KB

UTM

Статус

Возможно изобрести такую машину, которая справится с любой вычислимой последовательностью.

— Алан Тьюринг, «О вычислимых числах применительно к проблеме разрешения» (On Computable Numbers, with an Application to the Entscheidungsproblem) (1936)

UTM — это полноценный эмулятор системы и хост виртуальных машин для iOS и macOS. В основе UTM лежит QEMU. UTM позволяет запускать Windows, Linux и другие операционные системы на Mac, iPhone и iPad.

Дополнительная информация на getutm.app и mac.getutm.app.

UTM на iPhone
UTM на MacBook

Возможности

  • Полная эмуляция системы (с поддержкой блоков управления памятью, устройств и т.д.) на основе QEMU
  • Более 30 архитектур процессора, в том числе x86_64, ARM64 и RISC-V
  • VGA-графика на основе SPICE и QXL
  • Режим текстового терминала
  • Поддержка USB-устройств
  • JIT-оптимизация на основе QEMU TCG
  • UI, разработанный специально для macOS 11+ и iOS 11+ с помощью нативных API
  • Возможность создавать, настраивать и запускать виртуальные машины прямо на устройстве

Дополнительные возможности (только на macOS)

  • Аппаратное ускорение виртуализации с помощью фреймворка Hypervisor и QEMU
  • Возможность запускать macOS в виртуальных машинах с помощью фреймворка Virtualization (требуется macOS 12 или новее на хосте)

UTM SE

Для максимальной скорости работы UTM и QEMU используют кодогенерацию just-in-time, которая ограничена на iOS. Чтобы запустить UTM, можно воспользоваться джейлбрейком или — для некоторых версий iOS — одним из обходных путей (см. раздел «Установка»).

UTM SE (“slow edition”) использует поточный интерпретатор, который работает быстрее традиционного, но всё же медленнее JIT. Подобный подход используется в проекте iSH для динамического исполнения. В результате версия UTM SE не требует джейлбрейк или прочие хаки и может быть установлена как любое другое приложение.

Чтобы оптимизировать время сборки и размер приложения, UTM SE поддерживает только x86, ARM, PowerPC и RISC-V (все — в 32- и 64-битном вариантах).

Установка

Разработка

Лицензии

UTM распространяется по лицензии Apache 2.0.

Однако некоторые компоненты проекта используют более строгие лицензии из группы (L)GPL. Большинство таких компонентов использует динамическую связку, но плагины gstreamer связаны статически, а некоторые части кода взяти из QEMU. Пожалуйста, обращайте внимание на ограничения этих лицензий, если планируете распространять UTM.

Кроме того, UI приложения использует следующие компоненты, распространяемые по лицензиям MIT или BSD:

Некоторые значки взяты с Flaticon и сгенерированы с помощью Freepik.

Хостинг для CI предоставлен MacStadium.

MacStadium logo