Blog Post

Educator Developer Blog
4 MIN READ

Exploring Windows on ARM: The Future of Computing

sourabhkv's avatar
sourabhkv
Copper Contributor
Oct 09, 2024

Hello! I’m Sourabh Kumar Verma, a Microsoft Learn Student Ambassador from Bangalore, currently pursuing my studies in Computer Science.

 

Recently, I had the opportunity to explore Windows on ARM (24H2), hosted on an Azure Virtual Machine. Yes, you heard that right—Windows on ARM is available on Azure, and many people aren't aware of it! You don’t need a physical Windows Dev Kit 2023 or Windows Copilot+PC to access it.

 

What is Windows on ARM?
Windows on ARM refers to the version of the Windows operating system optimized for devices running ARM-based processors, as opposed to traditional x86 architecture. ARM processors are known for their power efficiency, making them ideal for mobile and energy-conscious devices. Over the past few years, ARM has grown in popularity due to its ability to deliver strong performance in smaller form factors, enabling longer battery life and more efficient operation.

 

Why ARM over x86?
The ARM architecture focuses on power efficiency and a simplified instruction set, offering significant benefits over x86. ARM-based devices tend to consume less power, making them excellent for portable and battery-powered devices. ARM processors also enable better thermal management, reducing the need for complex cooling systems. This shift is essential for scaling Windows to a broader range of devices beyond just PCs.

For more technical details, check out this Windows on ARM overview.

 

Running Windows on ARM in Azure VM
Yes, Windows on ARM can be hosted in the cloud, and I personally tested this on an Azure Virtual Machine. You don’t need specialized hardware—just a VM deployment. I used a setup with 4 cores and 16 GB of RAM (Standard D4pds v5 configuration), running Windows 11 Pro, and connected to it via RDP

Upon booting up, I noticed a few immediate differences:

  • The default wallpaper wasn't the familiar Windows 11 bloom wallpaper.
  • In the Task Manager, I saw that the VM was powered by an Ampere Altra processor, and the system was consuming about 3.5 GB of RAM and 20 GB of disk space.
  • It's very snappy
  • Almost all of the 1st party services are running on ARM64.

 

 

Majority of services running ARM64 architecture

 

App Compatibility on Windows on ARM
There are three types of app experiences when running Windows on ARM:
1. Fully optimized: Apps specifically built for ARM processors run smoothly and take full advantage of the architecture.
2. Emulated through Prism layer: x86 apps can still run on ARM through emulation, which uses a compatibility layer to translate instructions. Learn more about x86 emulation on ARM.
3. Incompatible apps: Some x86 apps, particularly those with heavy reliance on game engines, anti-cheat software, and certain drivers, may not run as expected.

 

Microsoft's Developer Tools for ARM
At Microsoft Build 2024, the launch of Copilot + PC was a major announcement, and it showcased how Windows on ARM is set to play a significant role in future development. You can read more about that launch here.

Microsoft has been making significant strides in providing developers with the tools to create native ARM apps. Whether you are working with Visual Studio, Visual Studio Code, or using other frameworks like .NET, there is robust support for developing apps optimized for ARM. Programming languages like Python, C#, and many others are fully supported, making it easier for developers to build powerful applications on this architecture.

 

I tested my C# Tic Tac Toe app built for x86 on .NET 5, and it ran flawlessly without any stutters or warnings, thanks to the excellent emulation layer.

 

Running x86 compiled .NET app in Windows on ARM through emulation

 

Successfully installed Python 3.12.6 ARM64

 

 Clean-up of resources

 

 

Conclusion
Windows on ARM represents a significant leap forward in efficiency, scalability, and portability for developers. Microsoft’s commitment to supporting ARM through developer tools, emulation layers, and Azure VMs makes it easier than ever for developers to explore this architecture. With robust development environments, programming language support, and a focus on native ARM apps, the potential for innovation is huge.

If you’re a developer, now is the perfect time to explore Windows on ARM—whether through Azure or the various developer kits available. The future of computing might just be powered by ARM!

 

Useful Links

  1. Overview of Windows on ARM:
    Learn more about the architecture and capabilities of Windows on ARM.
    Windows on ARM Overview

  2. x86 Emulation on Windows on ARM:
    Discover how x86 apps run on ARM using Microsoft's Prism layer for emulation.
    x86 Emulation on ARM

  3. Visual Studio for ARM Development:
    Explore the tools available for developing ARM-optimized apps using Visual Studio.
    Visual Studio on ARM

  4. Windows Dev Kit 2023:
    Get familiar with the hardware for developing ARM apps locally.
    Windows Dev Kit 2023

  5. Copilot + PC Launch:
    Read about the exciting new Copilot features unveiled at Microsoft Build 2024.
    Introducing Copilot + PC

  6. Register for Windows insider program

These links will help you get started with building, testing, and optimizing apps for Windows on ARM.

Updated Oct 02, 2024
Version 1.0
No CommentsBe the first to comment