Henge позволяет запускать macOS на iPhone без гипервизора
Открытый проект Henge позволяет установить и запустить полноценную macOS непосредственно на iPhone. Приложение распространяется бесплатно и использует собственную архитектуру эмуляции, поскольку мобильная операционная система Apple не предоставляет сторонним программам доступ к гипервизору.
Вместо системных средств виртуализации Henge выполняет ARM64-код macOS через собственный JIT-компилятор. Проект также реализует собственные механизмы управления памятью, включая эмуляцию MMU, и предоставляет виртуальные устройства, необходимые для работы гостевой операционной системы.
В разработке не используются QEMU и Virtualization.framework. Это означает, что Henge не опирается на готовый программный стек виртуализации, а самостоятельно берет на себя ключевые задачи, связанные с выполнением кода macOS и взаимодействием системы с виртуальным оборудованием.
Графика через Metal
Для вывода изображения macOS обращается к виртуальному графическому процессору. Henge перехватывает эти команды и транслирует их в API Metal, доступный на устройствах Apple. Благодаря этому в эмулируемой системе могут работать не только базовые компоненты интерфейса, но и приложения с графическим окружением.
В частности, разработчикам удалось запустить Safari, а также программы на базе Electron. В качестве примера приводится Discord: приложение устанавливается и запускается внутри macOS, после чего пользователь может пройти авторизацию и отправлять сообщения.
На iPhone 17 Pro загрузка эмулируемой macOS до экрана блокировки занимает около 15 секунд. Установка и запуск Discord занимает примерно столько же времени. Результат демонстрирует, что Henge способен запускать настольную операционную систему на современном смартфоне, несмотря на ограничения iOS и отсутствие прямого доступа к гипервизору.


