MacRumors

Skip to Content

Rosetta не будет поддерживать приложения виртуализации x86, работающие под Windows

Вчера Apple объявила о планах по выпуску будущих Mac на собственных чипах Apple Silicon и для облегчения перехода от процессоров Intel возродила функцию «Rosetta», которая позволяла запускать приложения PowerPC на процессорах Intel во время перехода от PowerPC к Intel.

applesilicon
Теперь Rosetta позволит пользователям запускать приложения, содержащие инструкции x86_64, на Apple Silicon, что означает, что приложения для Intel по-прежнему будут работать на Mac с собственными чипами Apple.

Rosetta предназначена для того, чтобы дать разработчикам время на создание нативных версий приложений, и существуют некоторые ограничения, которые стоит отметить. Как указано в документации для разработчиков, опубликованной на этой неделе, Rosetta сможет переводить большинство приложений для Intel, но не будет работать с приложениями виртуальных машин, виртуализирующими компьютерные платформы x86_64.

Это означает, что будущие Mac Apple с чипами собственной разработки не будут нативно поддерживать запуск текущих версий программ, таких как VMWare или Parallels, для запуска x86 Windows в программном обеспечении для виртуализации. Могут появиться другие нативные решения, но они потребуют усилий от сторонних разработчиков.

В настоящее время Mac имеют функцию Boot Camp, которая позволяет запускать Windows на них, но Apple не анонсировала аналогичной функции для Mac, оснащенных Apple Silicon. Rosetta также не сможет переводить расширения ядра.

Rosetta может переводить большинство приложений для Intel, включая приложения, содержащие компиляторы с динамической компиляцией (JIT). Однако Rosetta не переводит следующие исполняемые файлы:

— Расширения ядра
— Приложения виртуальных машин, которые виртуализируют компьютерные платформы x86_64

Rosetta переводит все инструкции x86_64, но не поддерживает выполнение некоторых новых наборов инструкций и функций процессора, таких как векторные инструкции AVX, AVX2 и AVX512. Если вы включаете эти новые инструкции в свой код, выполняйте их только после проверки их доступности. Например, чтобы определить, доступны ли векторные инструкции AVX512, используйте функцию sysctlbyname для проверки атрибута hw.optional.avx512f.

Вместе с Rosetta Apple запустила новую программу Universal App Quick Start Program для разработчиков, которая предоставляет «инструменты, ресурсы и поддержку» для тестирования и оптимизации универсальных приложений для macOS Big Sur.

Разработчики могут подать заявку на участие в программе, которая предоставляет набор для перехода разработчиков (Developer Transition Kit), выглядящий как Mac mini, но оснащенный чипом A12Z Bionic от iPad Pro, а также 16 ГБ ОЗУ и 512 ГБ SSD, среди прочих функций.

DTK позволит разработчикам начать создавать приложения, работающие как с чипами Intel, так и с Apple Silicon, в то время как Rosetta обеспечит поддержку в переходный период. Apple заявила, что представит первый Mac с собственным чипом в 2020 году, и что для полного перехода всей линейки Mac на собственные чипы потребуется два года.

Больше информации о Rosetta, ее работе и исключениях можно найти на сайте разработчиков Apple.