Linux, not Microsoft, the real winner of Windows Server on ARM
It's a real Peng... win
Sysadmin blog Microsoft now runs a bunch of Windows servers on ARM processors. Apparently, these ARM chips are quite good at their jobs and Microsoft might try converting entire categories of workloads over. All around the world the tech press has speculated on whether or not Windows on ARM will be showing up in on-premises datacenters. In doing so, they've completely missed the point.
Cutting to the heart of it, it doesn't actually matter if Microsoft releases Windows Server for ARM. Windows isn't the future and even Microsoft knows it. The upcoming availability of SQL server on Linux is all the proof we need that the game is over and, in the data centre at least, Microsoft didn't win.
Quite frankly, there's nothing wrong with that. Legacy x86 Windows applications have been a millstone around the neck of the entire industry for ages now and its long past time they were relegated to a niche and left to quietly slip away into the night. What's interesting here isn't that Microsoft managed to take its existing code base, strip out some of the cruft and compile it on ARM. What's interesting is what Microsoft's experiment unlocks outside the Windows ecosystem.
The key to the future of ARM servers that came out of the Microsoft ARM reveal is perhaps the most under-reported piece of information from the event. Microsoft's Windows Server for ARM distribution is able to run on both Cavium's ThunderX2 and Qualcomm's Centriq, both 64-bit ARM-compatible SoCs.
This is possible because of the Server Base System Architecture (SBSA) specification undertaken by ARM in 2014. This means that - for server-based ARM chips at least - hardware can be talked to using a generic ARM ACPI driver. In essence, we now have ARM chips that have the important bits of standardization that allowed the x86 ecosystem to grow, flourish and dominate the server space.
This is huge. SBSA is the real threat to Intel. This is what can and will allow every flavour of Linux, BSD and whatever else to run on ARM CPUs with minimal fuss or headache. SBSA allows for operating systems and advanced ARM hypervisors that can work across platforms provided by multiple vendors. SBSA allows for an entire extended ecosystem of hardware components and peripherals to work with ARM servers without having to go to a vertically integrated monopolist and beg them for inclusion into their ecosystem.
Microsoft buying enough ARM servers to start making noises about converting significant portions of their data centre operations over is the match that starts the fire. If hardware suppliers are going to keep making SBSA-based ARM chips, there has to be enough of a market to make it worth their while.
Microsoft is an entire hardware market all on its own. Without anyone else jumping in and buying up chips, Microsoft likely consumes enough servers to make it worth these two manufacturers continuing to develop and iterate their products. Of course, Microsoft isn't the only buyer of these chips and they won't be the only one buying in serious bulk either.
If a large enough market for these chips develops to keep chip-makers iterating designs and cranking out wafers then we're off to the races. Windows on ARM in our data centres is simply not required for this SBSA-based ARM chips to be a success. In fact, it may hinder more than it helps.
Windows on ARM failed miserably when Microsoft tried to use it with Windows 8. Microsoft envisioned a next-generation operating system free of the cruft of the past, including pesky things like end-user control over their operating system or devices.
By naming their first go at modern ARM clients "Windows", however, end users expected all their old applications to work as they did on their x86 PCs. They also expected the same UI, level of control over their OS, so on and so forth.
Microsoft's embrace of ARM servers is its opportunity to break from all that. Maybe all it does is release "Windows Server for ARM" and name it something else. Maybe it takes the time to get truly radical and pull one of its experimental post-windows OSes out of mothballs and give the world something worth using.
Microsoft's choices regarding Windows 10 have ruined the brand name, and there's no need to carry any baggage or expectations forward to this new platform. Let Microsoft's cloud team have their way and let legacy x86 Windows applications migrate into Microsoft's cloud. They can sit there forever, just like mainframes have in many organizations, and the rest of us can move on.
I, for one, hope this is the path it takes. I'm cautiously optimistic that there might even be someone within Microsoft bold enough to suggest it and politically empowered enough not to lose their job for doing so. It will be interesting to see what happens.
A similar question hangs over the open source community. Timothy Prickett Morgan at El Reg's sister site The Next Platform reports that the development versions of Red Hat Enterprise Linux, CentOS 7 and Canonical Ubuntu Server 16.04.3 are all certified to run on Qualcomm's Centriq. Presumably, they'll work just fine on systems based on Cavium's ThunderX2 as well.
So the Linux portion of this ARM server revolution has already begun. What's unknown is if they'll take this opportunity to start over. It's time for a new generation of servers without the 30-year-old applications or the need to support hardware, drivers and access methods that haven't been used in 30 years.
We've been bringing up an entire generation of "web native" developers who are all about writing applications without the crutch of platforms past. Maybe, now that they've cut their teeth on public clouds and containers, they're ready to reinvent our data centres, one ARM at a time. ®