ARM64EC сочетает код эмуляции Arm и x64 в Windows 11 для повышения производительности на Arm


В течение нескольких лет операционная система Windows была доступна на устройствах Arm, и хотя поддержка программного обеспечения прогрессировала, всегда были некоторые ограничения, а эмулированный код x86/x64 на Arm обычно работает не так быстро, как собственный код ARM32/ARM64.

До сих пор у разработчиков был выбор: запустить свое приложение x86/x64 на Arm с помощью эмуляции или перенести всё приложение на Arm, но компания Microsoft предложила решение, которое сочетает эмуляцию x64 и собственный Arm с ARM64EC (Emulation Compatible).

Это означает, что разработчикам не нужно будет переносить полное приложение на Arm, а вместо этого они могут сделать это шаг за шагом и сосредоточиться на той части кода, где встроенная поддержка Arm имеет наибольшее значение.

Microsoft объясняет:

ARM64EC — это новый двоичный интерфейс приложения (ABI) для Windows 11 на ARM, который работает с собственной скоростью и совместим с x64. Приложение, процесс или даже модуль могут свободно смешивать и сопоставлять ARM64EC и x64 по мере необходимости. Код ARM64EC в приложении будет работать в исходном формате, в то время как любой код x64 будет работать с использованием Windows 11 со встроенной эмуляцией ARM.

ARM64EC ABI следует соглашениям о программном обеспечении x64, включая соглашение о вызовах, использование стека и выравнивание данных, что делает ARM64EC и x64 совместимыми. Приложения, созданные как ARM64EC, могут содержать код x64, но не обязательно, поскольку ARM64EC — это собственный полный первоклассный ABI для Windows.

Microsoft использует ARM64EC в Windows 11, где все двоичные файлы были перестроены с помощью ARM64EC, чтобы приложения x64 могли запускать собственный системный код. Они также используют новый ABI с 64-битным Office for Arm, но не для основной программы, написанной с использованием собственного кода Arm, а для существующих плагинов x64, которые могут нормально работать с обновленной программой.

Поэтому мы ожидаем значительного повышения производительности Windows 11 на Arm по сравнению с Windows 10 для значительного количества программ. Разработчики могут загрузить последнюю сборку Windows Insider SDK и предварительную версию Visual Studio (версия 16.11, предварительная версия 2 или более поздняя), чтобы начать перенос приложений на ARM64EC.

Выражаем свою благодарность источнику из которого взята и переведена статья, сайту cnx-software.com.

Оригинал статьи вы можете прочитать здесь.

0 0 vote
Article Rating
Подписаться
Уведомление о
guest

Этот сайт использует Akismet для борьбы со спамом. Узнайте, как обрабатываются ваши данные комментариев.

0 Комментарий
Inline Feedbacks
View all comments