Разработчик запустил Windows для ARM на Mac с чипом M1

ВиртуализацияСофтНоутбуки


Разработчик из Германии Александр Граф (Alexander Graf) смог запустить с помощью виртуальной машины QEMU ОС Windows ARM64 Insider Preview на Mac с чипом M1. Для этого он использовал кастомные патчи к QEMU и Hypervisor.framework. Согласно информации Apple, этот фреймворк позволяет взаимодействовать с технологиями виртуализации в пользовательском пространстве без необходимости писать расширения ядра (KEXT).

Граф рассказал, что это не эмуляция x86, а полноценная нативная виртуализация, при которой достигается достаточно хорошая производительность путем выполнения гостевого кода непосредственно на хост-процессоре. Он подтвердил, что практически любой разработчик может повторить его успешную попытку, но это стоит делать лишь в качестве пробного тестирования, причем нужно запастись терпением. По словам Графа, пока что запущенная Windows система на M1 не всегда стабильна, а часть функций в ней недоступны.

Вдобавок Граф пояснил, что «Windows ARM64 может очень хорошо запускать приложения x86. Не так быстро, как это делает Rosetta 2, но очень близко к ней».

Граф продолжает усовершенствование набора патчей к QEMU. Он хочет запускать в качестве гостевой системы Linux и Windows на чипе Apple Silicon. Сейчас у него виртуализация выполняется с такими ограничениями:

  • нет эмуляции WFI, vCPU всегда использует 100%;
  • обработка vtimer «немного костыльная»;
  • большинство системных регистров сейчас обрабатываются вслепую, просто возвращая 0;
  • XHCI ломается в OVMF, работает в Linux + Windows.


28 ноября в базе синтетического теста производительности Geekbench 5 появились результаты тестирования Mac с чипом Apple M1, на котором была запущена с помощью виртуальной машины QEMU ОС Windows 10 на ARM. Тестирование показало, что в такой конфигурации система на ARM работает быстрее, чем устройство Microsoft Surface Pro X с нативной Windows 10 на ARM. Так, в одноядерном тесте чип M1 с Windows 10 ARM и 4 ГБ ОЗУ получил 1390 баллов, а в многоядерном — 4769. Для сравнения, Surface Pro X на базе процессора Microsoft SQ2 с 16 ГБ ОЗУ получил всего 802 балла в одноядерном тесте и 3104 балла в многоядерном.

20 ноября вице-президент Apple Крейг Федериги (Craig Federighi) рассказал, что технически на новых Mac с M1 можно запустить Windows для ARM, которая, в свою очередь, поддерживает x86-приложения. Apple реализовала в M1 все базовые технологии для этого. Теперь очередь за Microsoft, которая должна принять решение о предоставлении лицензии Apple и пользователям на технологию запуска Windows на новых Mac.

В середине ноября стало известно, что 32-битные приложения Windows работают на Apple M1 через эмуляцию в CrossOver, запущенном в эмуляции x86. Пока что это можно сделать в CrossOver версии 20.0.2 и только на macOS Big Sur 11.1 beta.

Примечательно, что недавно Линус Торвальдс заявил, что хотел бы приобрести новый Mac с чипом Apple Silicon M1, но он не будет работать с Linux. Он пояснил, что «Apple может запускать Linux в своем облаке, но их ноутбуки — нет».
Теги:Windows для ARMMacчип M1
Хабы: Виртуализация Софт Ноутбуки
+19
20k 10
Комментарии 15

Похожие публикации

Python для работы с данными
24 февраля 202131 500 ₽Нетология
Веб-разработка для начинающих
1 марта 202125 000 ₽Loftschool
SEO для всех
29 марта 202121 000 ₽Loftschool
Английский для тестировщиков
1 февраля 202118 000 ₽Лаборатория Качества

Лучшие публикации за сутки