Несмотря на первоначальный отказ Apple от приложения-эмулятора и первоначальное решение разработчиков отказаться от него, UTM SE был одобрен и выпущен в воскресенье в App Store. Эмулятор позволяет запускать классические операционные системы, программное обеспечение и игры на iPhone, iPad и Vision Pro.
UTM — популярная альтернатива на Mac таким приложениям, как Parallels, VMWare и VirtualBox. Он действует как графический интерфейс для эмулятора Qemu, управляемого из командной строки. Однако официально он никогда не был доступен пользователям iOS, поскольку Apple не разрешала использовать какие-либо эмуляторы в iOS App Store до апреля 2024 года.
Когда Turing Software впервые представила UTM SE в App Store, Apple отклонила это приложение. Apple также отказалась нотариально заверить его для сторонних магазинов приложений в Евросоюзе. Частично проблема заключалась в том, что приложение полагалось на компиляцию Just In Time (JIT) для обеспечения удовлетворительного опыта эмуляции. JIT-компиляция означает компиляцию кода во время работы программы, а не заранее, что Apple считает угрозой безопасности iOS.
Игровые эмуляторы, такие как DolphiniOS, также были отклонены из-за необходимости поддержки JIT. DolphiniOS зависит от метода эмуляции новых консолей Nintendo. UTM использовала его для трансляции кода PowerPC для работы на чипах Arm, используемых в современных устройствах Apple.
Не желая повторно отправлять приложение без поддержки JIT, потому что это означало бы некачественную работу, казалось, что UTM не появится на iPhone и iPad без джейлбрейка устройств. Однако помощь проекту оказал другой разработчик Qemu. Qemu — это фактический уровень эмуляции, который UTM использует, чтобы позволить пользователям запускать программное обеспечение, как если бы оно было установлено на старом Mac на базе i486 или PowerPC.
Команда реализовала версию потокового интерпретатора Qemu Tiny-Code (TCTI). Qemu TCTI интерпретирует код, а не компилирует его, что позволяет Turing Software обойти запрет JIT. Стоит иметь в виду, что это приводит к довольно медленной работе даже по стандартам эмулируемого оборудования. Вот почему в названии есть сочетание букв «SE», означающее Slow Edition.
При этом одобрение является хорошей новостью для других разработчиков эмуляторов. Можно установить UTM SE из App Store для запуска классических игр или операционных систем на эмулируемых архитектурах x86, PPC и RISC-V.