Перейти к содержимому
Новость

iPhone 17 и Mac на M5 запустили в QEMU, но привычной iOS там нет

Проект darwin-vm умеет загружать современные версии Darwin для виртуальных iPhone и Mac на Apple Silicon и дает root-доступ к системе. Но название легко понять неправильно: это среда для исследования ядра и системных компонентов, а не виртуальный iPhone с экраном, приложениями и рабочей iOS.

Впечатлительная
iPhone 17 и Mac на M5 запустили в QEMU, но привычной iOS там нет

Автор: jprx

Самая интересная часть darwin-vm начинается как раз там, где заканчивается привычное понимание эмулятора iPhone. Разработчик заявляет поддержку виртуальных iPhone 12, 13, 14, 15, 16 и 17 с процессорами от A14 до A19, а также Mac на чипах от M1 до M5. Звучит почти как способ запустить современную iOS на обычном компьютере. Но сам автор проекта сразу проводит жесткую границу: экрана, SpringBoard, графики, Wi-Fi, Bluetooth и обычных GUI-приложений здесь нет.
После загрузки пользователь оказывается в командной строке с правами root. Можно запускать собственные программы, менять файловую систему, разбирать работу ядра Darwin и отлаживать системные компоненты. Среди заявленных возможностей есть работа с kernel, dyld, launchd, SPTM и TXM. Именно это и объясняет поддержку свежих поколений Apple Silicon: отдельный форк QEMU получил реализацию механизмов, необходимых для загрузки более новых платформ Apple.
Для обычного тестирования приложений такая виртуальная машина почти бесполезна. Здесь нельзя открыть программу, проверить интерфейс под iPhone 17 или посмотреть, как сайт выглядит в Safari. darwin-vm рассчитан на совсем другую работу: исследование низкоуровневого устройства iOS и macOS без необходимости проводить эксперименты непосредственно на физическом смартфоне или Mac.
Есть и менее очевидное ограничение. Саму виртуальную машину можно запускать там, где работает QEMU, причем ARM-компьютер для этого не обязателен. Но подготовка файлов из IPSW в текущей инструкции требует доступа к Mac. Система извлекает kernelcache, Device Tree, ramdisk и другие необходимые компоненты, после чего используется модифицированная сборка QEMU. Поэтому формулировка «виртуальный iPhone на обычном ПК» технически возможна, но процедура пока не обходится без компьютера Apple на подготовительном этапе.
Поддержка современных моделей здесь ценна именно для исследователей. Предыдущие эксперименты с QEMU и iOS существовали давно, но darwin-vm ориентирован и на новые механизмы защиты Apple Silicon, включая SPTM, TXM и MIE. В репозитории прямо говорится, что проект опирается на более ранние работы по эмуляции iOS и macOS, а его собственное отличие связано с поддержкой компонентов, необходимых для новых процессоров.
Получился редкий случай, когда слово «эмуляция» обещает меньше зрелища, чем реальной технической свободы. Виртуального iPhone для запуска приложений здесь нет. Зато есть доступ к той части iOS и macOS, которую обычный эмулятор как раз старается от пользователя спрятать.

Источник: GitHub