
В давние времена мобильные устройства бренда Apple имели очень малую функциональность. Даже загрузить файл через Safari было невозможно. Популярный тогда Jailbreak позволял решить эти «детские» проблемы. Из-за этого многие мечтали установить привычную операционную систему Windows вместо неполноценной iOS. В прошлом году Apple разрешила устанавливать эмуляторы из-за чего под видом «игровой платформы» вышло приложение UTM SE. Сегодня посмотрим на его возможности для запуска Windows и поговорим о самой эмуляции.
Что такое Эмуляция и ее виды?
Эмуляция — процесс запуска одной аппаратной платформы или операционной системы внутри другой. Благодаря этому достигается запуск приложений, которые были созданы внутри одной аппаратно-программной среды, без необходимости иметь физическое оборудование или установку второй системы. Например, запуск нескольких версий Windows и Linux одновременно.
В связи с большим количеством выпущенных архитектур (ARM64, x86_64), процессоров (MIPS для PSP), операционных систем (Windows, Android, iOS, Debian, Ubuntu) необходимо иметь возможность их устанавливать и запускать. Существует целых три варианта эмуляции: Полная эмуляция (Full Emulation), Виртуализация (Virtualisation) и Интерпретация API (API Emulation).
Во время Полной эмуляции происходит воссоздание аппаратной архитектуры и ОС на программном уровне. Вы правильно могли догадаться — осуществляется эмуляция работы процессора, видеокарты, памяти, аудио, устройств ввода/вывода и тому подобное. Если очень коротко описать этот процесс: сначала происходит эмуляция аппаратной и софтовой части, а уже на их основе происходит запуск программного кода программ.
Приложения, которые ее используют: DOXBox, QEMU в режиме полной эмуляции, PPSSPP, PCSX2 (эмуляция Sony PlayStation 2).
Очевидными преимуществами и минусами такого подхода становятся:
- Максимальная совместимость систем — запуск оригинального ПО в «родной среде». Изменять что-то в коде почти или вообще не нужно;
- Возможность применять любую оригинальную аппаратную платформу пользователя для запуска чужой систем. Например, запуск консоли Sony PSP в эмуляторе PPSSPP на Google Android с Snapdragon/Mediateck, на Apple iOS/iPadOS/MacOS с А18 или M1 (ARM64) и Windows (x86_64);
- Благодаря эмуляции вне зоны основной ОС пользователя, создается безопасное место для запуска потенциального вредоносного ПО;
- Значительно медленнее быстродействие, чем у оригинальной платформы. Также требует значительного количества ресурсов и производительности среды, на которой эмулируют другую платформу;
- Потенциальная проблема с совместимостью каких-то уникальных вещей. Например, Аппаратного ускорения графики (Hardware Acceleration).
Для преодоления проблемы низкой производительности разработчики применяют различные «хитрости». В том же PPSSPP применяется JIT-компиляция (Just-In-Time) — блоки машинного кода предназначенные для CPU PSP преобразуются в код, который понимает и обрабатывает CPU пользователя. Динамическая перекомпиляция (Dynarec/DBT) расширяет возможности JIT благодаря кэшированию повторно запущенных блоков кода. Применяется в таких эмуляторах как Dolphin, PCSX2 и RPCS3. Первый применяется для запуска игр от GameCube и Wii, а последние два — Sony PlayStation 2 и PlayStation 3 соответственно.
Скорее всего, Полную эмуляцию сейчас почти не встретишь, поскольку лучше применить другие методы эмуляции. Они более оптимизированы и позволяют не тратить значительное время на какие-то элементарные действия.
Перейдем к Виртуализации, которую используют в таких известных приложениях, как VirtualBox, VMware Workstation или Parallels. Эта технология позволяет создавать виртуальные копии операционных систем, серверов, дисков или сетей на одном реальном устройстве. Если по простому: на одном вашем ПК может быть много разных конфигураций разных систем.
При желании стать разработчиком ПО, вам придется иметь несколько или даже с десяток виртуальных машин.
Схематически, принцип работы Виртуализации выглядит довольно просто: пользователь запускает одно специализированное программное обеспечение, которое называется Гипервизор (Hypervisor), для создания, настройки и запуска Виртуальных машин (VM, Virtual Machine). Такой «гостевой ПК», как в случае с Полной эмуляцией, имеет свою предварительно выделенную процессорную, графическую подсистему и память.
Рассмотрим преимущества и недостатки Виртуализации. В основном, получаем больше плюсов для обычного и профессионального пользования. А именно:
- Значительное повышение быстродействия, по сравнению с Полной эмуляцией;
- Экономия времени, электропотребления и ресурсов CPU/GPU. Все же, это проще;
- Немного увеличено потребление ресурсов памяти, особенно RAM;
- Главный недостаток — неспособность VM работать на разных архитектурах. Даже если увидите запуск х86_64 на ARM64 или наоборот, все равно будет происходить «невидимая» эмуляция. Конечно же, быстродействие уменьшится;
- Для VM гораздо труднее получить поддержку эксклюзивных вещей в эмулированных ОС или аппаратных решениях;
- Гибкость, из-за значительной простоты в применении VM. Особенно, для бизнес-процессов и облачных вычислений;
В общем, два вида эмуляции за эти годы настолько сильно объединились в одно целое, что трудно определить границы начала Полной эмуляции, а где — Виртуализации.
Интерпретация API дополняет предыдущие два вида эмуляции. Она позволяет перехватывать вызовы от API (Application Programming Interface; Прикладной программный интерфейс) из одной системы, обработать их в таком виде, чтобы API второй платформы смогло работать с ним. Примеры API, которые применяют для разработки игр: OpenGL, DirectX, Vulcan. А для геймеров на Linux или macOS: Wine и CrossOver.
Приведем понятные преимущества и недостатки такого решения:
- Нет необходимости эмулировать аппаратную часть. API «разберутся» сами. Пример: RPCS3 преобразует код от Sony GCM API в привычный для ПК OpenGL;
- Значительно уменьшено потребление ресурсов и позволяет использование программных драйверов, графических ускорителей от «родной машины» пользователя;
- Не все API имеют свои аналоги. Именно поэтому так долго не выходил эмулятор для PS3 — сложная архитектура и API к ней (LibGCM и PSGL);
- Много сложной и ручной работы по правильному преобразованию различных API. Конечно, без огромного количества тестов не обойтись.
Особенно этот метод необходим для SteamOS, благодаря которой игры из Windows можно запускать на Linux. По понятным причинам, такой переход не может быть быстрым во времени: преобразование, тестирование, дебаг, снова тесты. Получается такой своеобразный замкнутый круг. Тем не менее плоды стараний увенчались грандиозным успехом — устройства на SteamOS имеют лучшую производительность в играх, чем в «родной» Windows 11. Про увеличенное время автономной работы также забывать не будем.
Устанавливаем и изучаем Windows на iPhone
Как уже было сказано еще в начале статьи, попробуем установить ОС Windows 7 и Windows XP. Тестовый смартфон: iPhone 15, в котором стоит ARM процессор A16 Bionic и 6 ГБ RAM. Но напрямую установить ОС Windows не удастся по очевидным причинам: сама Apple не позволяет, нет никаких оригинальных драйверов, обе версии Windows не поддерживают процессоры ARM. Поэтому придется эмулировать не только работу обеих ОС, а еще и аппаратной платформы (Intel x86_64).
Для выполнения такой непростой задачи используем приложение UTM SE (ссылка на AppStore). C описания и открытия страницы с выбором ОС увидим, что можно эмулировать не только Windows (XP, 7, 10, 11), но и ArchLinux, Debian, Fedora, Kali Linux и Ubuntu. Большинство из них имеют поддержку ARM64 систем.
Только никто не запрещает установить платформу х86_64 на AARM (Apple ARM). Для начала давайте попробуем установить Windows XP, как одну из самых известных ОС. Она требует мало памяти (для RAM или ROM) и должна хорошо работать благодаря своему возрасту. Находим Windows XP (желательно 32-битную) на просторах Интернета (с ключом) в формате ISO. Затем загружаем специальный файл с настройками виртуальной системы от самих разработчиков. При выборе диска необходимо найти заранее скачанную ОС с условным названием «WindowsXp.iso». Если вы качаете сразу на смартфон, образ найдете в папке Скачанное, содержимое которой можете увидеть в приложении Файлы.





Если все верно, пойдет инсталляция Windows XP. В начале, все кажется достаточно хорошо. Однако со временем, начинаешь понимать один очень неприятный момент — слишком долго. На смартфоне установка ОС заняла около 2 часов! Конечно, в те далекие времена установка Windows могла занять больше времени. Вот только во время этого времени лучше не пользоваться смартфоном (будет еще дольше). Блокировать смартфон также нельзя, поскольку во время блокировки iOS почти не выделяет ресурсы на работу в фоне. Блокировку дисплея или Экономию энергии также выключите.













Давно не виделись, старый друг BSOD
После установки перед нами полноценная Windows XP на смартфоне! Чистая система занимает примерно 2 ГБ памяти, что и не так много. В общем, пользоваться сенсорным дисплеем привычно, как тачпадом. Разве что клавиатурой не удобно пользоваться. Для подключения к Интернету нужно установить все необходимые драйверы для виртуальных адаптеров. Поэтому нужно выключить нашу новую/старую ОС. Интернет работает через Bridge, NAT нет.
Все необходимые драйверы можно получить двумя путями: скачать самостоятельно с сайта или внутри программы UTM SE. Для второго варианта необходимо нажать и держать виртуальную машину, чтобы появилось дополнительное меню выбора. В нем выбираем Install Windows Guest Tools, а далее ждем загрузки и монтирования в CD-привод. Если в нем уже что-то находится, вы увидите ошибку. Поэтому нужно найти этот диск, нажать Eject и снова нажать на Install Windows Guest Tools.
Затем мы включаем Windows, ищем встроенный диск и нажимаем на единственный установщик на главном диске. Снова оставляем смартфон еще на один час. Поздравляю! Все что нужно установлено. Теперь можно заходить в Интернет, применяя WiFi. Через LTE почему-то не работает.
Проверим подключение мыши и клавиатуры к эмулированной Windows XP. Для этого к iPhone 15 подключим USB-Hub и вставим наши Іnput устройства. И да, они действительно работают. Только клавиши на клавиатуре не совпадают. Например, на 4 находится Enter.
Однако у Windows XP существует одна большая проблема — полная потеря поддержки не только от Microsoft, а еще от крупных корпораций. Браузер Internet Explorer настолько старый, что не поддерживает стандарт HTTPS. А скачать и передать Firefox 52.9 с его поддержкой очень трудно. Еще и неизвестно, сколько придется его устанавливать.
К сожалению, Windows XP больше нужна для вспоминания времен молодости. Эмулировать ее почти нет смысла. Хорошо, что можно это сделать. Однако гораздо лучше найти комплектующие и собрать настоящий Ностальгический ПК.
Перейдем к Windows 7. Особо ничем создание виртуальной машины не отличается, кроме увеличенных требований к выделенной памяти: ROM с 8 ГБ (Windows XP) против 20 ГБ (Windows 7), RAM с 512 МБ до 2 ГБ. Далее монтируем диск с Windows и ждем установки. На этот раз время оказалось еще дольше — более трех с половиной часов! Но дополнительно следует установить драйверы из Windows Guest Tools. На это ушло еще два часа. Мышь, клавиатура и интернет по WiFi работают.








Windows 7 работает медленнее, чем Windows XP. По неизвестным мне причинам, процессор почти всегда держит 100% загруженность. Увеличение RAM или количества процессоров (с 1 до 4) также ощутимого быстродействия не добавляет. Факторов предостаточно: образ, неправильно настроенная машина, установка обновлений Windows и тому подобное.
Из интересного, виртуальное «железо» не поддерживает Hardware Acceleration в Windows 7. Тогда как Windows XP ее имеет. Теоретически, на нее можно установить игры тех лет и попробовать запустить. Вот только что-то подсказывает, что любой ПК за меньшие деньги (SteamDeck не упоминаем) с этим справится лучше.
А что с iPhone 15? Во время проведения всех эмуляций стал понятен один момент — смартфон становился очень сильно горячим. Он настолько сильно нагревался, что мог перестать заряжаться от розетки с блоком питания на 5 Вт. Явно срабатывала защита от температур. Поэтому если есть желание попробовать, не заряжайте смартфон во время эмуляции. Зарядили до 80% или 100% и отключили зарядное устройство.
С одной стороны, эмуляция — необходимая вещь для обучения в университете, разработки приложений или облачных вычислений. В пользовательском сегменте технология также необходима (играть в игры). Вот только смартфоны (особенно Apple) отличны от старых ПК. Поэтому не очень сильно приспособлены друг к другу. Проще иметь отдельное дешевое устройство, чем делать один «комбайн» All-in-One.
Favbet Tech – это IT-компания со 100% украинской ДНК, которая создает совершенные сервисы для iGaming и Betting с использованием передовых технологий и предоставляет доступ к ним. Favbet Tech разрабатывает инновационное программное обеспечение через сложную многокомпонентную платформу, способную выдерживать огромные нагрузки и создавать уникальный опыт для игроков.
Сообщить об опечатке
Текст, который будет отправлен нашим редакторам: