Windows on ARM: Enhancing Efficiency and Performance

Windows on ARM: Enhancing Efficiency and Performance
In this article

Transition to ARM: A New Era for Windows Devices

Historically, Windows operating systems have been associated with computers operating on x86 / x64 processors. However, the landscape is changing, with Windows now also embracing devices that are driven by ARM processors.

The transition to ARM-based devices sparks considerable interest due to ARM’s architecture, which is renowned for its efficiency in power consumption. This not only allows these devices to boast extended battery life but also ensures they provide impressive performance levels. ARM Systems on a Chip (SoC) are characterized by a suite of advanced components, including robust CPUs, GPUs, and integrated support for Wi-Fi and cellular networks. They also offer specialized Neural Processor Units (NPUs), which are designed to enhance the processing of artificial intelligence tasks, marking a significant shift in what users can expect from their Windows devices.

Embracing ARM: The Future of Windows Application Development

As the paradigm shifts towards ARM-based devices, Windows 10 has laid the groundwork by enabling existing x86 apps to operate seamlessly on ARM hardware. Advancing this compatibility, Windows 11 is revolutionizing the scene with support for unmodified x64 Windows applications on ARM devices. This capability ensures that the transition to ARM devices does not come at the cost of losing access to a vast majority of pre-existing apps and tools. Users can be assured of a smooth experience, maintaining productivity with their preferred applications.

Nevertheless, for optimal performance, swift responsiveness, and superior battery efficiency, the future rests in ARM-native Windows applications. Thus, it falls upon developers to focus on creating or converting apps to be ARM-native. This is not just a trend but a keystone for harnessing the full potential of ARM technology within the Windows ecosystem.

The Toolbox for ARM Application Development

To support this evolution, Microsoft is committed to providing a comprehensive ARM-native developer toolset. Notably, this includes an ARM-native incarnation of Visual Studio 2022, VSCode, VC++ toolchain, along with the classic .NET Framework, modern .NET, and Java. By expanding this initiative, Microsoft collaborates with third-party vendors and taps into the open-source community, aiming to port a wide array of common tools, runtimes, frameworks, and libraries that are optimized for Windows on ARM.

These developments were enthusiastically unveiled at Microsoft Build 2022, marking a significant milestone. The announcement introduced a full-fledged suite of tools, services, and devices dedicated to empowering developers. With these resources at their disposal, developers are poised to build and adapt applications targeting ARM as smoothly and effortlessly as they would for x64-based systems, ushering in a new era of Windows application development.

Windows on ARM: Enhancing Efficiency and Performance

Exploring Windows 11 on ARM with Azure’s Ampere Altra Processors

The tech landscape continues to evolve, and with Azure, the possibilities are broadening. Now, users can craft and deploy Windows 11 ARM64 Virtual Machines (VMs) empowered by the robust Ampere Altra, a processor built on ARM architecture, through Microsoft’s cloud platform. Microsoft’s Quickstart guide provides step-by-step instructions to leverage these advancements in your projects.

Discover the benefits and methods of implementing Windows on ARM Virtual Machines by delving into Microsoft’s comprehensive resources.

ARM Developer Devices: The Tools for Building the Future

Developers who are eager to innovate and build Windows applications optimized for ARM architecture require capable ARM devices to code, test, and refine their creations. The market has responded to this demand by offering an assortment of ARM-powered devices fashioned by Microsoft’s partners. These devices, including laptops and convertible tablets, are not only high-performing and capable but are also lauded for their exceptional battery life. They come equipped with a growing compilation of ARM-native developer tools, solidifying their status as suitable platforms for modern development needs.

Among these offerings, a standout is the Windows Dev Kit 2023, nicknamed “Project Volterra.” This device is at the forefront, tailor-made to bolster the capabilities of Windows developers, particularly those focusing on artificial intelligence. AI researchers and app developers seeking to weave AI functionalities into their applications will find “Project Volterra” to be a robust ally in their endeavours. The Windows Dev Kit 2023 signifies a specialized tool in Microsoft’s ecosystem, designed to advance the integration of cutting-edge technology in a wide range of user experiences.

Optimized App Performance with Native ARM Support on Windows

Windows has stretched its capabilities beyond traditional x86 and x64 architectures and has embraced the ARM terrain. Now, the operating system is fully capable of running native ARM applications alongside a host of unmodified x86 and x64 applications. However, harnessing the architecture’s full advantages, particularly in terms of performance and energy efficiency, is best achieved through developing and deploying ARM-native applications.

The diverse development ecosystem for Windows means that there’s a broad spectrum of tools and technologies at developers’ disposal for creating Windows applications. Whether it’s through native C/C++ for Win32 apps, leveraging the classic .NET Framework with WinForms or WPF, or employing modern .NET or MAUI—the doors are open for innovation. Furthermore, applications developed using an array of languages and frameworks such as Java, Python, and Node.js are also part of this inclusion, offering developers the flexibility to choose their preferred stack for ARM-native app development.

Windows on ARM: Enhancing Efficiency and Performance

Empowering Developers: Tools for ARM-Based App Creation

In the realm of Windows app development, the ARM architecture is emerging as a propelling force. Microsoft’s dedication manifests through a suite of tools and frameworks meticulously tailored for the development of ARM-native applications.

The transition has been eased with the introduction of an ARM-tuned Visual Studio 2022, along with VSCode and VC++ tools. Additionally, the familiar .NET Framework, the versatile modern .NET, and Java are part of this expansive toolkit aimed at providing a smooth development experience on ARM.

Open-source contributions further enrich the resources available, paving the way for a diverse and well-supported environment to code for ARM devices. Microsoft’s Build 2022 conference highlighted this focus, announcing a plethora of tools and resources designed to equip developers with everything they need for ARM-based app development.

There’s an undeniable sense of a new era dawning—a powerhouse of possibilities for those ready to embrace the ARM architecture in the Windows ecosystem.

  • The all-new Arm-native Visual Studio is equipped with Visual C++, .NET & .NET Framework, and Java, empowering developers to create and debug Arm applications directly on devices with Arm architectures. Discover additional insights in the official blog post.
  • For those working on the Arm platform, Visual Studio Code is compatible and available for download on Arm-based systems. The C++ extension for VS Code enhances this experience with C++ IntelliSense and build features, aiding in the development of Windows applications optimized for running on Arm64 hardware.
  • .NET 6 features support for Arm architectures, catering to both native Arm operation and x64 emulation modes. For crafting .NET applications that operate on Arm64 architecture natively, it’s advised to utilize the latest Arm-native Visual Studio 2022 version 17.4, as well as the Arm64 .NET 7 SDK. Discover the enhancements and performance boosts that .NET 7 brings to Arm64 by visiting the .NET Blog.
  • As for the .NET 6 Arm64 SDK: Utilizing the command dotnet run with this SDK, the .NET 6 applications will execute default in Arm64 mode. The dotnet-runtimeinfo utility allows developers to comprehend the runtime environment specifics for .NET. For more particulars on the integration of Arm64 support within .NET 6, the related announcement on the .NET blog is a valuable resource.
  • Test Base for Microsoft 365 recently expanded its compatibility to include Arm64 architectures. By incorporating support for Arm64, Test Base broadens the spectrum of devices and Windows operating systems against which applications can be tested. To discover more, delve into the recent Windows 11 Arm Private Preview announcement, or apply to partake in the private Arm preview.

Best Practices for Crafting ARM-Compatible Windows Applications

  • It is advisable to utilize MSIX for packaging your application before distribution. For insights on how MSIX caters to Arm and Arm64 architectures, you can refer to App package architectures: Arm and Arm64.
  • Some Visual Studio projects may not be set up to initiate projects on local Arm devices directly through the debug starting command (F5). Local applications might still need to be configured for remote debugging in Visual Studio. For guidelines on this process, visit remote debugging.
  • To grab the suggested packages for Visual Studio, head to the Visual Studio downloads page.
    • Locate the Remote Tools for Visual Studio 2022 by scrolling to the All downloads area and expanding the Tools for Visual Studio 2022 menu. You’ll find Remote Tools for Visual Studio 2022 mentioned there. Remember to select the Arm64 option before you hit Download.
    • The Microsoft Visual C++ Redistributable can be found under the All downloads section as well. Just expand the Other tools and Frameworks menu, and there it is. Ensure the Arm64 option is chosen before downloading.
    • Users of older Visual Studio versions should click on the Older Downloads link at the bottom of the page to locate the relevant downloads for their specific Visual Studio release.
  • On Arm devices, the Microsoft Store installation process for your app is automated by Windows 11 to deliver the most suitable app version. An Arm64 version will be auto-installed by the operating system if x86, Arm32, and Arm64 versions are available in the Microsoft Store. For submissions containing only x86 and Arm32, the Arm32 is selected. And for apps with just an x86 version, this will be installed and executed under emulation.
  • If there are multiple choices for app architecture, selecting the 32-bit x86 option allows you to run the 32-bit version of an application on a Windows on Arm PC. In instances where an app’s x64 Win32 version encounters issues, typically, an x86 variant will be obtainable.
  • For additional details concerning app architectures, take a look at App package architectures.

Introducing the App Assure Arm Advisory Service

To complement Microsoft’s detailed tutorial on incorporating Arm support for your Windows applications, they present the App Assure Arm Advisory Service. This service stands ready to assist you when challenges arise in the optimization process. It extends beyond our steadfast commitment to ensuring your applications function seamlessly on Windows on Arm. Should you face any difficulties, Microsoft pledges its support to guide you through resolution steps. For further information on this service, click here to learn more. Sign up for Windows Arm Advisory Service Here.

Windows on ARM: Enhancing Efficiency and Performance

Ready to Elevate Your Embedded Computing Projects?

Contact BVM for unrivalled expertise in Industrial and Embedded Computing solutions. With three decades of experience, our role as a Microsoft Windows Embedded Partner, and a proficient sales team, we’re perfectly equipped to handle your specialized requirements. Reach out to our sales team at 01489 780144 or shoot us an email at sales@bvmltd.co.uk.

If our extensive selection of off-the-shelf solutions doesn’t align with your unique demands, fear not—our in-house design team is at the ready to tailor-design new, bespoke hardware solutions just for you. Partner with BVM and let’s design the future together.

We like to make life easier ….

BVM supply a wide and diverse range of Industrial and Embedded Systems.
From Industrial Motherboards, SBCs and Box PCs, to Rack Mount computers and Industrial Panel PCs. Our support teams have worked in a variety of industrial and embedded environments and consequently provide knowledge, know-how, experience and all round good advice around all BVM’s products & services when and where you need it. 

We don’t profess to know everything you need at the time – but we’ll always help in the first instance and get back to you when a little more information is required.

You can either call us directly on +(0) 1489 780 144 and talk to one of the team | E-mail us at sales@bvmltd.co.uk | Use the contact form on our website

BVM Design and Manufacturing Services: The manufacturer behind the solutions you know

When a standard embedded design won’t suffice for what you need, you can always turn to BVM for help and use our custom design and manufacturing services.