Microsoft needs Windows to succeed on ARM

Microsoft's big 2019 event is just a few hours away and, thanks to some leaks, there are a lot of expectations coming into the Surface press conference. Even if it doesn't announce the fabled dual-screen Surface, a.k.a. codename "Centaurus", Microsoft will still make headlines if it does announce an ARM-powered Surface 2-in-1 tablet. This will hardly be Microsoft's first dance with ARM, even on its own Surface brand, and it will hardly be the last. But unlike the company's previous attempts, Microsoft has to make this one stick and has to make Windows work on the ARM platform. Not because Intel and AMD and the x86 CPU architecture are going anywhere but exactly because it isn't going anywhere at all.

Power, Portability, and Plugs

The growth of mobile computing, which now includes smartphones and tablets, has created an ironic situation with power outlets. A lot more people expect them to be provided in public facilities, especially cafes and airports, and while there indeed more of them these days, there are also fewer of them available for use at any given time. The race for the wall socket has put laptops at an even bigger disadvantage because while smartphones can top off from power banks, few laptops can.

Work today has evolved, some may say mutated, to become less tethered to desks, though some definitely still require the power of the venerable desktop. Dragging around laptops has never been comfortable because users have always been forced to compromise on power and battery life, mostly because those were the only choices available to them. Today's high-end ARM processors almost offer the trifecta of performance, power efficiency, and space savings but the compromise has been on the software instead.

What is a computer?

If you're willing to stretch definitions a bit, there have been ARM-based computers in the consumer market as long as there have been smartphones. Of course, it is only recently that they have become even comparable to desktop-class computers and even then often against older generations of processors. Still, even Intel CPUs from 2017 or 2016 were enough to run Windows. Unfortunately, it isn't always about the clock cycles and benchmarks.

Apple has been pushing to redefine what a computer is and between the iPad Pros, Chromebooks, and even Android tablets in the market, the definition has indeed become rather fluid these days, especially when it comes to the OS. Still, for the majority of computer users, it is Windows that is the daily driver of computing. With the exception of the long-departed Windows CE and the ill-fated Windows Phone and Windows RT, Windows has been primarily an x86 OS. While that offers a sense of stability and consistency over decades, it also means that the OS has been stuck in time as much as Intel et al. have.

Quo vadis, x86?

The x86 CPU architecture is an old one and has been the mainstream hardware platform in the tech world, from desktops to workstations to servers. That's not going to change any time soon and Intel and AMD will continue to dominate that market. Unfortunately, there isn't much else going in those segments where innovation usually involves cramming more transistors in the same space, often using up less power as well. Nothing much has changed in the desktop (and laptop) space and we're seeing more and more of the same things year after year.

In contrast, everything else outside that space has been changing rapidly in the past decade, be it in the mainstream ARM architecture even less known ones like RISC and MIPS. Never mind smartphones, there has been a lot of growth or even experimentation in wearables, foldables, IoT, and everything in between. Heck, even the single-board computer (SBC) space is an exciting one for modders and makers and very few of those have x86 CPUs. If Microsoft wants Windows to be a part of that revolution and innovation, it needs to really work on

Rough journey

To its credit, Microsoft has tried to make Windows work on ARM devices. Windows RT failed because of a lack of software which Microsoft has tried to address over time. Its latest attempt, running x86 programs on ARM via some compatibility layers, but its performance was so disappointing it might as well as have not existed at all. Microsoft has been working on that compatibility layer and, hopefully, performance will be better now.

Microsoft is also fortunate that computing needs and workflows have considerably changed in the past few years. Web apps are all the rage again and some big software developers are less averse to bringing their software to more platforms, provided it won't be too much work. While it would be ideal for Windows on ARM to support the same breadth of software available on x86, it is neither practical nor realistic, especially for getting the platform on sure footing. Microsoft only needs to focus on a handful of high-profile apps to be "ported" over to Windows on ARM, the ones that are most likely to impress the users and the ones that may also be the hardest to get right on a new platform. Like Photoshop.

Wrap-up

The x86 platform isn't going anywhere and neither will desktops and laptops, workstations and servers. There will always be a market for computers that have processing power as the highest priority over battery life, presuming there's even a battery in the first place. Gaming, multimedia content creation, number crunching and programming, all these will always find a home in the Intels and AMDs of the tech world.

That world, however, is becoming more diverse, however, especially as these once niche hardware platforms become more popular and more accessible to consumers. These will be the computers of the future, or at least some of them will be. And if Microsoft doesn't want to be left out in the cold yet again, it shouldn't lose time in making Windows work on these systems.