Partilhar via


Windows em ARM

O Windows tem sido tradicionalmente executado em máquinas que são alimentadas por processadores x86 / x64, mas mais recentemente, também é executado em dispositivos alimentados por processadores Arm.

Os dispositivos alimentados por braço são particularmente interessantes porque a natureza frugal de energia da arquitetura Arm permite que esses dispositivos ofereçam maior vida útil da bateria enquanto oferecem um ótimo desempenho. Os Arm Systems on Chip (SoC) geralmente incluem outros recursos importantes, como uma poderosa CPU, GPU Wi-Fi & redes de dados móveis, bem como Unidades de Processador Neural (NPUs) para acelerar cargas de trabalho de IA.

Crie aplicativos do Windows que são executados no Arm

O Windows 10 permite que aplicativos x86 existentes não modificados sejam executados em dispositivos Arm. O Windows 11 adiciona a capacidade de executar aplicativos x64 do Windows não modificados em dispositivos Arm! Essa capacidade de executar aplicativos x86 & x64 em dispositivos Arm dá aos usuários finais a confiança de que a maioria de seus aplicativos & ferramentas existentes funcionarão bem, mesmo em novos dispositivos equipados com Arm.

Para obter o melhor desempenho, capacidade de resposta e duração da bateria, os usuários vão querer e precisar de aplicativos do Windows nativos do Arm, o que significa que os desenvolvedores precisarão criar ou portar aplicativos do Windows nativos do Arm.

Verifique se é suportado no Arm: Windows on Arm Ready Software - Este site é a sua fonte de informações de compatibilidade para muitas aplicações e jogos em dispositivos Windows que são executados na arquitetura Arm e serão atualizados ao longo do tempo.

Máquinas Virtuais

Você pode criar e implantar VMs do Windows 11 Arm64 com processadores baseados no Ampere Altra Arm no Azure. Saiba como neste artigo Guia de início rápido.

Saiba mais sobre como usar o Windows em máquinas virtuais Arm:

Dispositivos de desenvolvedor Arm

O número de opções disponíveis para desenvolvedores que desejam criar e testar aplicativos nativos do Arm no Windows tem crescido.

  • os PCs Copilot+ oferecem uma Unidade de Processamento Neural (NPU) e as mais recentes funcionalidades de IA e capacidade de computação, através de diversos fabricantes de dispositivos. Muitos dos quais são alimentados pelo processador Snapdragon® X Series baseado em Arm, que oferece 45 trilhões de operações por segundo (TOPS).

  • do Windows Dev Kit 2023 (nome de código "Project Volterra") não está mais disponível para compra como novo, mas continua a ser um dispositivo viável baseado em Arm, criado para apoiar o desenvolvimento no Windows, investigação em IA e testes de integração de IA em aplicações e experiências.

Suporte para aplicativos existentes do Windows no Arm

gráfico de Tipos de aplicação.

O Windows on Arm executa aplicativos Arm nativos, bem como muitos aplicativos x86 & x64 não modificados, mas para o melhor desempenho e duração da bateria, os aplicativos devem ser criados para serem nativos do Arm sempre que possível. Os aplicativos do Windows podem ser criados usando muitas ferramentas e tecnologias diferentes, incluindo aplicativos Win32 C/C++ nativos, aplicativos WinForms/WPF clássicos do .NET Framework, aplicativos modernos .NET ou MAUI, ou até mesmo aplicativos criados usando Java, Python, node, etc.

Encontre ferramentas para o desenvolvimento ARM

Ferramentas gráfico

A Microsoft está continuamente a fornecer atualizações do conjunto de ferramentas de desenvolvedor nativo do ARM para criar e portar aplicativos que visam de forma nativa dispositivos com tecnologia Windows ARM tão facilmente quanto quando visam x64. Apoio ao desenvolvimento de aplicações para Arm, em Arm.

  • Visual Studio nativo de Arm inclui Visual C++, .NET &, .NET Framework e Java, e permitirá que os desenvolvedores criem e depurem nativamente aplicações Arm em dispositivos baseados em Arm. Saiba mais: Arm64 Visual Studio está oficialmente aqui! (nov 2022), Otimizações MSVC ARM64 no Visual Studio 2022 17.7 (set 2023).
  • Visual Studio Code suporta nativamente Arm e pode ser instalado em dispositivos Arm. A extensão VS Code C++ também oferece suporte ao C++ IntelliSense e compilação para o desenvolvimento de aplicativos do Windows que são executados nativamente em dispositivos Arm64.
  • .NET 6+ já suporta Arm, tanto para execução Arm nativa quanto emulação x64. Para desenvolver aplicativos .NET que são executados nativamente em dispositivos Arm64, recomendamos instalar o novo Visual Studio 2022 17.4 nativo do Arm e .NET 8 Arm64 SDK. Saiba mais sobre o suporte do .NET 8 para Arm e as melhorias de desempenho para o Arm64 no Blog do .NET: Melhorias de desempenho do Arm64 no .NET 8 (outubro de 2023).
  • SDK do .NET 6 Arm64: Por padrão, se você dotnet run um aplicativo .NET 6 com o SDK do Arm64, ele será executado como Arm64. A ferramenta dotnet-runtimeinfo pode ser usada para descobrir o ambiente em que o .NET está sendo executado. Consulte o anúncio do blog sobre o suporte Arm64 no .NET 6 para saber mais.
  • A cadeia de ferramentas VC++ (Arm Developer) é a cadeia de ferramentas GNU para versões da Arquitetura Arm produzidas pela Arm, permitindo que parceiros, desenvolvedores e a comunidade usem novos recursos da recente Arquitetura Arm e de projetos de código aberto como GCC, Binutils, glibc, Newlib e GDB.
  • Suporte Java para Arm no OpenJDK: Anunciando o OpenJDK para Windows no ARM (junho de 2020)
  • GitHub Actions: GitHub Actions, o mecanismo de fluxo de trabalho CI/CD do GitHub é parte integrante dos fluxos de trabalho de muitos desenvolvedores, eles usam isso para criar, testar e implantar aplicativos continuamente. O GitHub Actions agora está disponível para Windows no Arm em 2 sabores: 1. corredores auto-hospedados que podem ser hospedados em um dispositivo Arm VM ou Arm e 2. Runners hospedados no GitHub (atualmente disponíveis em beta privado, mas com lançamento geral previsto para breve).
  • Docker Desktop: Os contêineres são um destino de implantação bastante popular por muitos motivos - um fluxo de trabalho de desenvolvimento simplificado, isolamento e segurança, utilização eficiente de recursos, portabilidade e reprodutibilidade. A área de trabalho do Docker agora é executada nativamente no Windows on Arm.

Observação

Usamos o termo Arm como uma abreviação para PCs que executam a versão desktop do Windows em processadores Arm64 (também comumente chamados de AArch64). Usamos o termo Arm32 aqui como uma abreviação para a arquitetura Arm de 32 bits (comumente chamada de Arm em outra documentação). PCs alimentados por Arm fornecem excelente compatibilidade de aplicativos e permitem que você execute seus aplicativos x86 win32 existentes não modificados. Os aplicativos Arm são executados nativamente sem qualquer emulação, enquanto os aplicativos x86 e x64 são executados sob emulação em dispositivos Arm.

Arm64EC - Ajuda para atualizar aplicativos do Windows para serem executados no Arm

Gráfico Arm64EC.

O Arm64EC ("Emulation Compatible") permite que você crie novos aplicativos de forma incremental, ou faça a portabilidade de aplicativos existentes, para aproveitar o desempenho nativo do Arm sempre que possível, enquanto utiliza bibliotecas de & de código x64 existentes até ser totalmente migrado. Saiba mais:

Dicas adicionais para desenvolver aplicativos do Windows executados em dispositivos Arm

  • Recomendamos usar MSIX para empacotar seu aplicativo para distribuição. Para obter mais informações sobre como o MSIX suporta Arm e Arm64, consulte Arquiteturas de pacotes de aplicativos: Arm e Arm64.

  • Nem todos os projetos do Visual Studio são configurados para iniciar projetos localmente quando você inicia a depuração (F5) de um dispositivo Arm. Talvez seja necessário configurar o Visual Studio para depuração remota, mesmo que seu aplicativo esteja sendo executado localmente. Para obter mais informações, consulte depuração remota.

  • Para localizar e instalar os pacotes recomendados no Visual Studio, visite a página downloads do Visual Studio.

    • Para o Ferramentas Remotas para Visual Studio 2022, role abaixo da seção Todos os downloads e expanda o menu suspenso Ferramentas para Visual Studio 2022. Ferramentas Remotas para Visual Studio 2022 serão listadas ali. Certifique-se de verificar o botão de opção Arm64 e, em seguida, Download.
    • Para o Microsoft Visual C++ Redistributable, role abaixo da secção Todos os downloads e expanda o menu suspenso Outras ferramentas e frameworks. Microsoft Visual C++ Redistributable for Visual Studio 2022 será listado lá. Certifique-se de verificar o botão de opção Arm64 e, em seguida, Download.
    • Se você estiver usando uma versão mais antiga do Visual Studio, selecione o link Downloads mais antigos na parte inferior da página para procurar os downloads associados à sua versão do Visual Studio.
  • Quando um utilizador instala a sua aplicação num dispositivo Arm a partir da Microsoft Store, o Windows 11 seleciona automaticamente a versão ideal da sua aplicação que está disponível. Se você enviar as versões x86, Arm32 e Arm64 do seu aplicativo para a Microsoft Store, o sistema operacional instalará automaticamente a versão Arm64 do seu aplicativo. Se você enviar apenas as versões x86 e Arm32 do seu aplicativo, o sistema operacional instalará a versão Arm32. Se você enviar apenas a versão x86 do seu aplicativo, o sistema operacional instalará essa versão e a executará sob emulação.

  • Quando tiver a opção de arquitetura do aplicativo, escolha a versão x86 de 32 bits para executar a versão de 32 bits do aplicativo em um Windows no Arm PC. Se a versão x64 Win32 de um aplicativo não funcionar, a maioria dos aplicativos terá uma versão x86 disponível.

  • Para obter mais informações sobre arquiteturas, consulte Arquiteturas de pacotes de aplicativos.

Serviço de Consultoria App Assure Arm

Enquanto a nossa orientação para Adicionar suporte para Arm à sua aplicação do Windows explica como criar uma versão otimizada para Arm da sua aplicação. O serviço de aconselhamento do App Assure Arm está disponível para ajudar se encontrares dificuldades. Este serviço é adicional à nossa promessa existente: as suas aplicações serão executadas no Windows on Arm e, se encontrar quaisquer problemas, a Microsoft ajudá-lo-á a corrigi-los. Saiba mais.

Inscreva-se no Serviço de Consultoria Windows Arm.

Recursos adicionais

Recursos externos