I was going to hold off on further Windows 8 comments until the Consumer Preview shipped, but since Steven Sinofsky posted detailed information on Windows 8’s ARM support today I thought I’d make a few remarks.

The most important clarification that Steven made today is that Windows on ARM (WOA) won’t be supporting desktop (aka Win32) applications except for a version of Office 15 (and internal Windows utilities). If you need to run legacy desktop applications, for either business or personal reasons, then you’ll want to use an x86-based system. I don’t see this as really being a significant problem for users as the expectation is that both Intel and AMD will be producing x86 System-on-a-Chip (SoC) offerings competitive with ARM SoCs later this year. And OEMs will be producing x86 tablets that are competitive with ARM tablets. Sinofsky made clear that the ARM-based systems will have branding that differentiates them from the x86-based systems so that consumers won’t be confused on which to buy (i.e., they won’t buy an ARM-based machine thinking it can run legacy applications). That’s an important revelation. A related, and important, revelation was that Steven seemed to say there will be a single edition of Windows 8 for SoC-based (as opposed to classic motherboard-based) systems, be they ARM or x86 and it would be priced competitively. In an earlier blog posting I postulated that Microsoft would produce a tablet-specific edition of Windows 8 that was priced to allow Windows tablets to compete with Android. I’d say Sinofsky confirmed my speculation.

The biggest overall take away from the blog posting is that ARM-based systems have both feet in the new world while x86-based systems can have one foot in the new world and one in the legacy world. One of the biggest challenges we face as an industry is that our legacy holds us back from moving forward. On x86 it can take years, or decades, to get rid of the legacy Microsoft no longer wants. However ARM has no legacy, and Microsoft sees no reason to bring the unwanted parts of the Windows legacy there. So ARM-based systems get a fresh start. Sinofsky points out one of the most obvious benefits, that nearly all of the legacy issues that caused Windows to have security problems over the years will be absent from ARM-based systems. Also most of the things that cause battery life problems, system instability, and cross-application interference. Gone. That’s the good news.

The bad news, or potentially bad news, is that without legacy application support it is hard to see why a consumer would opt for a Windows 8 ARM-based tablet over an Apple iPad. Sinofsky is obviously very confident that the number and quality of Metro applications in the Windows Store will grow very fast and negate the significant advantage that Apple’s iPad will initially enjoy. Most of my friends, both current and ex-Microsoft employees, are skeptics. As much as they love Windows 8, they think that Microsoft’s advantage the first couple of years is in the ability to run legacy apps. And so they don’t see how ARM-based tablets can succeed initially. I tend to be in this camp. Microsoft has to hit the 100K Metro app mark before ARM-based systems will start to be attractive relative to x86-based ones, and that could take a while.

One of the more controversial revelations today is that Office 15 will be the only Win32 app allowed on WOA systems. This is a compromise I’m sure Sinofsky didn’t want to make, but given the choice of no Office (because they couldn’t move to WinRT in time) and this weird situation he gave in. The big controversy is both “hey, how come I can’t run my Win32 app too” and “Is this legal?”. The former question I think Sinofsky addressed well, the latter he didn’t touch on but I will. It’s the difference between “IS” and “HAS”.

Microsoft isn’t a monopoly, Microsoft was found to have a monopoly in a specific market. And that market wasn’t “computer operating systems”, it was specifically operating systems for Intel processors. The reason for this is simple, the government has to narrow the definition of the market enough to show monopoly power but keep it broad enough to justify sticking its nose in it. If, in the 90s, one were to consider all computer operating systems then Microsoft did not have monopoly power. How many Power/PowerPC processors ran Windows? MIPS? SPARC? ALPHA? VAX? ARM? S/360? Not many. So if you included servers, embedded systems, minicomputers, mainframes, and PDAs in your market definition then Microsoft did not have a monopoly. The government solved this by narrowing the market definition to Microsoft operating systems running on Intel processors. Ok, that’s then and this is now so could the definition change? Well, the latest numbers on what I consider the total Personal Computing market space (desktops + notebooks + tablets + smartphones) show Microsoft has as little as 40% of the total market! It’s share in the tablet space is around 1.5% and its share in Smartphones is also in the single digits. Throw in servers and embedded systems and Microsoft’s overall share of the computer operating system business is potentially as low as 10% (total guess, it could be lower). In other words any attempt to redefine the market makes the notion that Microsoft is a monopoly look silly (and almost certainly fails in court, should Microsoft decide to fight such an attempt). Sticking with the adjudicated claim that Microsoft has an operating systems monopoly on Intel processors means that Microsoft’s freedom of action on Intel processors is limited, but those limitations don’t apply to its operating systems on ARM processors. So locking down ARM-based systems with Apple-like restrictions that on x86-based systems would violate the consent decree, and even allowing Office to use Win32 APIs while denying those to third parties, is legal.

In truth most of Microsoft’s competitors will probably be happy that Microsoft is not providing the ability to run Win32 apps with WOA. The main competitor to Office is Google Apps, and the combination of great HTML5 support and lack of Win32 support seems to play into Google’s hands. In fact Windows 8’s overall focus on HTML5 is great news for Google. Creating a WinRT version of the Chrome Browser might be a challenge for them, and that could create some friction, but overall I think Google should be happy about Microsoft’s moves. What about Open Office and its relatives? Well, they are all multi-platform offerings so they should be able to do WinRT ports if they desire. And to be clear, although Office 15 is not a Metro app it has been developed specifically for the Windows 8 environment. That is, for touch, good power and resource utilization, etc. So even if Microsoft desired (or were forced) to allow 3rd party Win32 apps comparable to Office 15 to run on WOA it likely could impose those requirements on the apps. In other words, legacy apps would still not be supported but rather a bastardization of Win32 that met rules similar to those imposed on WinRT. It appears Microsoft considered this approach and decided instead to bite the bullet and accelerate the move to WinRT.

The bottom line for WOA, or for Windows 8 in general, is how successful Microsoft is at quickly building a large library of Metro apps. There are moves they could have made, such as directly supporting Windows Phone apps on Windows 8, that could have caused that library to near instantaneously exceed 100K apps. They’ve chose the more difficult route of forcing apps to be converted, rewritten, or written for Metro/WinRT if they want to run on WOA (and in general if they want to be great tablet apps). In the long run that is the right decision, but it sure adds a lot of risk to Microsoft’s Windows 8 ambitions.

5 Responses to Windows on ARM (WOA)

I’m curious how you see the future of the desktop environment – is it merely “legacy”, or is it just an alternative suited to different use cases which will continue to be important? Or will they somehow be brought closer together in the future, e.g. will elements of the “Metro-style” app model, like the packaging format or security sandbox or WinRT APIs, be brought to the desktop – maybe even using some kind of lightweight virtualization to accommodate legacy apps? – and/or will the Metro UI conventions and environment be extended to cover more “dense / tool-oriented” scenarios? Not that you’d know the answers to these questions (I doubt even Sinofsky knows for sure yet), but I’d be interested in your thoughts.

One thing Sinofsky mentioned in passing in his post was how the “legacy” command prompt not only initially coexisted with the Windows GUI environment, but of course 27 years after Windows 1.0 it still does (though it is no longer DOS), and they have even gone to the trouble of creating an entirely new command line environment – Windows PowerShell – which hasn’t replaced the old one but rather both are still not only supported but new features are still being added to Windows that are ONLY exposed through the command line. It’s far from a perfect analogy but it makes me skeptical that the “legacy” desktop will go away anytime soon.

The desktop environment will live on for many years (and perhaps decades) because Windows is a totally general purpose operating system and is used in many many scenarios not covered by the Metro/WinRT app model. Over time Microsoft will expand the applicability of WinRT for additional scenarios, but even still we’ve learned that apps have multi-decade lifespans. So just as Windows still runs most old DOS apps I think that a decade from now Microsoft operating systems will have a way of running Win32 apps. However, the percentage of systems capable of running those apps will shrink over time both because of the obvious (as ARM-based systems gain marketshare) and active effort by Microsoft (SKUs that that don’t allow desktop apps even on Intel).

How exactly Microsoft evolves the desktop environment is a good question. On ARM systems, for example, you can use App Publishing with the Remote Desktop to give access to critical corporate desktop apps that are actually running on a Windows Server. On x86 systems you could remove Win32 et al from the core operating system and ship a legacy Win32 environment virtual machine just as you suggest. But what they won’t do is try to evolve Win32. The reason for WinRT is that a decade of looking at how to fix the existing app model concluded it couldn’t be done.

Your last paragraph sums up the situation nicely. They seem to have gone out of their way to take the riskiest approach possible. Is it continued arrogance and denial about the reality of their competitive situation, or an admission of just how big the threat is and they have no other choice for the long term? Hard to tell.