MS just did not port Windows 8 to ARM

With a lot of fanfare Microsoft said they would offer Windows 8 in both an X86 as an ARM version. I was happy to see that Microsoft was innovating again after 10 years, and even saw loads of advantages of their Java-clone .NET. But then I started to read into Windows CE, Windows Embedded Compact, Windows Embedded Standard, Windows Mobile and Windows 8 (Desktop). I want to share this with you, even if it has not anything to do with OpenCL.

So they did port Windows to ARM which evolved to the 2012 version of the OS, but did not port Windows 8.0 from scratch. Below you can read why.

Windows Embedded 7.0

You saw it correctly, it is currently at version 7.0 (ok, almost). There are two versions: “Compact” (the successor of CE) and “Standard” (a successor of XP embedded). Let’s check the Standard version (currently 6.0, 7.0 to be released), to see what it is:

  • It runs on X86 – 32 and 64 bits. No ARM, so it seems.
  • It has succeeded Windows Embedded 2009 in April 2010 and is a componentised version of Windows 7.
  • It contains Silverlight, .NET Framework 3.5, Internet Explorer 7, Windows Media Player 11, RDP 6.1, Network Access Protection, Microsoft Baseline Security Analyzer and support for being managed by Windows Server Update Services and System Center Configuration Manager.

The Standard version seems to be just Windows Desktop, except that is exists of components, and each component can be removed (as the EU has asked them to do with the Desktop-version, they said it was impossible). The compact version (currently 6, 7 almost released) is a bit more drilled down to be able to run on low-power devices, but has much in common with its big brother:

  • It runs on x86, ARM, SH4 and MIPS.
  • Windows phone 7 is based on it.
  • It contains Silverlight, Internet Explorer, Flash Lite, Touch and Gesture Connection Manager, Microsoft Office and PDF Viewers.
  • It contains .NET Compact Framework, which supports a subset of the .NET Framework with projects in C#, and VB.NET, but not Managed C++.
  • An Office-product exists for it.

And yes, Windows Embedded 8 is in the making!

An alternative for my story would be that in 2012, there will be the following products:

  • Windows 8 Desktop for X86
  • Windows 8 Desktop for ARM
  • Windows 8 Embedded Compact
  • Windows 8 Embedded Standard
  • Windows 8 Phone

This would be strange, since there is so much overlap. And on top of that a selection of these:

  • Windows 8 Phone tablet-optimised
  • Windows 8 Embedded tablet-optimised
  • Windows 8 Desktop for X86 tablet-optimised
  • Windows 8 Desktop for ARM tablet-optimised

When seeing this, you so hope they share at least a bit of code, don’t you? I did not even mention Home, Professional and Premium editions, but that is not a real difference in the base-code.

History of Windows on ARM

For years Microsoft tried to sell more embedded solutions, but wanted to keep the desktop and embedded separated. Probably because CE was not that stable as it is now, which could negatively influence their name. So there where video-cameras running Windows, but it did not really sell as big as MS wanted. They managed to get Windows running on cash-machines or on tour-information-systems on buses (without a journaling file system or SSD), which has given pretty nice photos around the web. So in short: it has not have had the success they hoped for.

They now made a decision to take the risk: let’s combine Windows Embedded (ARM) and Windows Desktop (X86). So instead of bragging about that they ported Office to Windows CE (which is quite cool and worth an applause since they now need to build binaries for two architectures), they said that Windows 8 will also be available in an ARM-version and have proofed that point by showing Office running on “Windows 8 for ARM”. And now you know the history of their embedded line, you see it was not a really big thing and all remarks like “We have worked on it for years” fall in place.

So what now?

I believed first that Windows-for-ARM would be a big jump forward since I could not really imagine what it was. But knowing it is just Windows CE 8.0 gives me a clearer image. It still has the same problems as it had since CE 5.0: it does not have a comparable experience (yet) as “the big brother” (apps-wise) and other comparable devices (then Palm, now iOS and Android ). So to attract more developers and buyers it means: spending loads of money in marketing, rebounds and support. By renaming Windows Embedded as “Windows for ARM” the chances of selling their ARM-based software do have increased, but time will tell if they really succeeded in their marketing-efforts. Unluckily for them Apple and Google are not waiting for Microsoft and keep on developing on their ARM-based operating systems as they have done very successfully for years now.