Windows на архитектуре ARM

Windows традиционно работает на компьютерах с процессорами x86 или x64, но в последнее время также работает на устройствах, работающих на процессорах Arm.

Устройства с поддержкой arm особенно интересны, так как архитектура Arm позволяет этим устройствам обеспечить большую продолжительность работы батареи, обеспечивая высокую производительность. Системы Arm на микросхеме (SoC) часто включают другие ключевые функции, такие как мощный ЦП, GPU, Wi-Fi и мобильные сети данных, а также единицы нейронного процессора (NPUs) для ускорения рабочих нагрузок ИИ.

Создание приложений Windows, работающих в Arm

Windows 10 позволяет существующим немодифицированным приложениям x86 запускаться на устройствах Arm. Windows 11 добавляет возможность запускать неизмененные приложения x64 Windows на устройствах Arm! Эта возможность запускать приложения x86 и x64 на устройствах Arm дает конечным пользователям уверенность в том, что большинство существующих приложений и инструментов будут работать хорошо даже на новых устройствах, работающих под управлением Arm.

Для оптимальной производительности, быстродействия и заряда батареи пользователи хотят и нуждаются в приложениях Windows на основе Arm, что означает, что разработчикам потребуется создавать или переносить приложения Windows на основе Arm.

Средства разработчика ARM

Корпорация Майкрософт работает над доставкой набора инструментов разработчика на основе Arm, включая Visual Studio 2022, VSCode, цепочку инструментов VC++, классическую платформа .NET Framework, современную .NET и Java. Корпорация Майкрософт также работает с несколькими 3-ми сторонами и сообществами с открытым кодом для переноса общих инструментов, сред выполнения, платформ и библиотек для собственного назначения Windows в Arm. Ознакомьтесь с объявлением сборки 2022 об этом комплексном наборе инструментов, служб и устройств, позволяющих разработчикам создавать и портировать приложения, которые изначально предназначены для Arm, как при выборе x64.

Виртуальные машины

Вы можете создавать и развертывать виртуальные машины Windows 11 Arm64 с помощью процессоров Ampere Altra Arm в Azure. Узнайте, как описано в этой статье краткого руководства.

Дополнительные сведения об использовании Windows в Arm Виртуальные машины:

Устройства разработчика Arm

Разработчики нуждаются в устройствах Arm, на которых необходимо создавать и тестировать собственные приложения Windows Arm. Несколько устройств на основе Arm уже доступны от партнеров Майкрософт. Эти портативные устройства, независимо от того, имеет ли ноутбук форм-фактор устройство или преобразуемый планшет, обеспечивают большую производительность, время работы батареи и запускают растущий массив средств разработчика Arm.

Пакет средств разработки Для Windows 2023 (название кода Project Volterra) — это последнее устройство Arm, созданное для поддержки разработчиков Windows, исследователей ИИ и разработчиков, желающих интегрировать ИИ в свои приложения и возможности.

Arm64EC — создание приложений для Windows 11 в Arm

Arm64EC graphic.

Arm64EC ("Совместимость с эмуляцией") позволяет постепенно создавать новые приложения или переносить существующие приложения, чтобы воспользоваться собственной производительностью Arm, где это возможно, при использовании существующих библиотек и кода x64 до полной миграции. Подробнее:

Поддержка существующих приложений Windows в Arm

App Types graphic.

Windows on Arm запускает собственные приложения Arm, а также множество неизмененных приложений x86 и x64, но для оптимальной производительности и заряда батареи приложения должны быть созданы для arm-native по возможности. Приложения Windows можно создавать с помощью различных средств и технологий, включая собственные приложения C/C++ Win32, классические платформа .NET Framework приложения WinForms/WPF, современные приложения .NET или MAUI, а также даже приложения, созданные с помощью Java, Python, node и т. д.

Поиск средств разработки Arm

Tools graphic

Windows предлагает различные инструменты и платформы для поддержки разработки приложений для Arm на Arm.

  • Новый Visual Studio на основе Arm включает Visual C++, .NET и платформа .NET Framework и Java и позволит разработчикам создавать и отлаживать приложения Arm на устройствах на основе Arm. Дополнительные сведения см. в объявлении блога.
  • Visual Studio Code изначально поддерживает Arm и может быть установлен на устройствах Arm. Расширение VS Code C++ также предлагает intelliSense C++ и поддержку сборки для разработки приложений Windows, работающих на устройствах Arm64.
  • .NET 6 уже поддерживает Arm как для машинного выполнения Arm, так и для эмуляции x64. Для разработки приложений .NET, работающих на устройствах Arm64, рекомендуется установить новый собственный пакет Visual Studio 2022 17.4 и пакет SDK для .NET 7 Arm64. Дополнительные сведения о поддержке .NET 7 для Arm и улучшения производительности Arm64 см. в блоге .NET.
  • Пакет SDK для .NET 6 Arm64: по умолчанию, если приложение dotnet run .NET 6 с пакетом SDK Arm64 будет работать как Arm64. Это dotnet-runtimeinfo средство можно использовать для обнаружения среды, в которой работает .NET. Дополнительные сведения см. в блоге .NET 6 в службе поддержки Arm64.

Примечание.

Мы используем термин Arm в качестве сокращенной для компьютеров, работающих под управлением классической версии Windows в Arm64 (также часто называемых процессорами AArch64). Мы используем термин Arm32 здесь как сокращенную для 32-разрядной архитектуры Arm (часто называемую Arm в другой документации). Компьютеры на основе Arm обеспечивают отличную совместимость приложений и позволяют запускать существующие неизмененные приложения x86 win32. Приложения Arm выполняются изначально без эмуляции, а приложения x86 и x64 выполняются под эмуляцией на устройствах Arm.

Дополнительные советы по разработке приложений Windows, работающих на устройствах Arm

  • Мы рекомендуем использовать MSIX для упаковки приложения для распространения. Дополнительные сведения о том, как MSIX поддерживает Arm и Arm64, см. в архитектурах пакетов приложений: Arm и Arm64.

  • Не все проекты Visual Studio настроены локально для запуска проектов при запуске отладки (F5) с устройства Arm. Возможно, потребуется настроить Visual Studio для удаленной отладки, даже если приложение выполняется локально. Дополнительные сведения см. в статье Удаленная отладка.

  • Чтобы найти и установить рекомендуемые пакеты в Visual Studio, перейдите на страницу загрузки Visual Studio.

    • Для Инструменты удаленной отладки для Visual Studio 2022 прокрутите страницу ниже раздела "Все загрузки" и разверните раскрывающееся меню "Сервис для Visual Studio 2022". Инструменты удаленной отладки для Visual Studio 2022 будет указан там. Не забудьте проверка переключатель Arm64, а затем скачать.
    • Для Microsoft Распространяемый компонент Visual C++ прокрутите страницу ниже раздела "Все загрузки" и разверните раскрывающееся меню "Другие средства и платформы". Корпорация Майкрософт Распространяемый компонент Visual C++ для Visual Studio 2022 будет указана там. Не забудьте проверка переключатель Arm64, а затем скачать.
    • Если вы используете старую версию Visual Studio, выберите ссылку "Старые загрузки" в нижней части страницы , чтобы найти скачиваемые файлы, связанные с вашей версией Visual Studio.
  • Когда пользователь устанавливает приложение на устройстве Arm из Microsoft Store, Windows 11 автоматически выбирает оптимальную версию приложения, доступную. Если вы отправляете версии приложения x86, Arm32 и Arm64 в Microsoft Store, операционная система автоматически установит версию Arm64 приложения. Если вы отправляете только версии x86 и Arm32, операционная система установит версию Arm32. Если вы отправляете только версию x86 приложения, операционная система установит эту версию и запустите ее под эмуляцией.

  • При выборе архитектуры приложения выберите 32-разрядную версию x86, чтобы запустить 32-разрядную версию приложения на компьютере с Windows на компьютере Arm. Если версия x64 Win32 приложения не работает, большинство приложений будет доступной версии x86.

  • Дополнительные сведения об архитектурах см. в разделе "Архитектура пакетов приложений".

Служба рекомендаций по Arm Для обеспечения приложений

Хотя наше руководство по добавлению поддержки Arm в приложение Windows описывает, как создать оптимизированную для Arm версию приложения. Служба рекомендаций по arm для обеспечения поддержки приложений доступна, если вы застряли. Эта служба в дополнение к нашему существующему обещанию: ваши приложения будут работать в Windows на Arm, и при возникновении каких-либо проблем корпорация Майкрософт поможет вам устранить их. Подробнее.

Зарегистрируйтесь в службе рекомендаций Windows Arm.

Дополнительные ресурсы

Внешние ресурсы