Microsoft Provides Windows on ARM Detailsby Andrew Cunningham on February 9, 2012 6:00 PM EST
We've known that Microsoft has been planning an ARM-compatible version of Windows since well before we knew anything else about Windows 8, but the particulars have often been obscured both by unclear signals from Microsoft itself and subsequent coverage of those unclear signals by journalists. Steven Sinofsky has taken to the Building Windows blog today to clear up some of this ambiguity, and in doing so has drawn a clearer line between the version of Windows that will run on ARM, and the version of Windows that will run on x86 processors.
Up until now, we've operated under the assumption that a new version of Windows called Windows 8 would be released this year, and that it would run on both x86 (32-bit and 64-bit - throughout this article I'll use x86 to refer to both architectures) and ARM processors - Sinofsky's post makes it clear that the ARM version of Windows, officially referred to as Windows on ARM (WOA), is considered to be a separate product from Windows 8, the same way that products like Windows Server and Windows Embedded share a foundation with but are distinct from Windows 7. Windows on ARM has a "high degree of commonality" and "very significant shared code" with Windows 8 - much of the user's interaction with the OS will be the same on either platform, and much of the underlying technology we've seen in our Windows 8 coverage so far will be present in both versions, but they're distinct products that will be treated differently by Microsoft.
This post is quite lengthy and represents what is likely to be our best look at WOA for at least a little while - we'll get to see some of its features in the Windows 8 Consumer Preview when it is released at the end of the month, but for now Windows on ARM is only being tested internally, and on customized hardware that will be sent to some developers and hardware partners at about the same time. It will be a little while before we see anything remotely similar to shipping hardware.
The Windows Desktop, Office, and x86 Apps
One of the biggest recurring questions I've seen about Windows on ARM is whether the standard Windows desktop would be available for use on those devices as it will be on Windows 8 machines - the answer is yes, it definitely will be. The desktop can be invoked from the Start screen, and once there users can perform standard Windows Explorer operations, launch the desktop version of Internet Explorer, and other tasks either via touch (for which Explorer has apparently been optimized) or via keyboard and mouse input. The desktop will only consume resources when it is launched, meaning that there are no performance or battery life implications for users who stick with the Metro interface for everything - the desktop is there if you want it, but one of Microsoft's stated goals with the Metro interface is to make it so that you don't need to use the desktop as a fallback.
Microsoft will also be bundling versions of Microsoft Word, Excel, PowerPoint, and OneNote with Windows on ARM systems. These Office apps will be a part of the new Office 15 family of products (suggesting, but not guaranteeing, that we may see a full x86 version of that suite before the end of the year as well), but will be touch-optimized versions of the applications rather than ports of the standard suite. The Windows on ARM products will "maintain fidelity" with their x86 counterparts (meaning that a file created in Word or Powerpoint on an x86 machine will look the same on an ARM machine), but will otherwise be redesigned to fit the platform - an early version of Excel is shown above.
That said, Microsoft is firm in its insistence that it will not support running, emulating, or porting existing x86 apps on the Windows on ARM desktop - apps can only be downloaded and installed through the Windows Store, and only apps written to target the new WinRT APIs can be distributed through the store (however, the store will be able to distribute and update both ARM and x86 versions of apps in the event that the app uses any code native to either architecture). Microsoft suggests that current Windows developers should be able to take significant bits of their existing code and wrap them in a Metro layer, but acknowledges that bringing over existing apps will require a bit of work - WinRT is clearly the wave of the future where Windows is concerned, but it'll be up to individual developers to decide how, when, and if to bring their programs over.
Supported Devices and Release Date
Windows on ARM is being written to run on ARM SoCs from NVIDIA, Qualcomm, and Texas Instruments, and it will only be available on devices designed to run it - you won't be able to buy a license for Windows on ARM and install it on an existing tablet, or a tablet designed to run Android. Microsoft is working with partners to deliver compatible hardware, and the company's goal is to start shipping devices running Windows on ARM at the same time as x86 devices running Windows 8 (currently slated for late this year).
In addition to SoC type, Microsoft will have a set of broad guidelines for Windows on ARM tablets that are similar to those for current Windows phones (the "chassis specification," in Microsoft parlance) - likely a set of supported screen resolutions and a list of required hardware devices designed to provide a middle ground between the uniformity of the iPad and the diversity-to-the-point-of-insanity of Android tablets. On Windows phones, these requirements are in place to give consumers some choice while also limiting developer headaches and ensuring a standardized look and feel across different devices from different manufacturers - the requirements for Windows on ARM will have the same aims, and we'll talk a little bit more about some of the hardware that will be common to WOA devices later on in this post.
In treating Windows on ARM as a separate product, Microsoft has left itself some wiggle room to let its release date slip without holding up Windows 8 (wiggle room is very important to the post-Vista Windows team, and they generally don't give hard dates unless they expect to be able to hit them). Microsoft obviously wants to ship before the end of the year because, let's face it, they don't want to give Apple, Google, Amazon, and the rest another holiday season all to themselves, but at this point in the game a botched or half-baked release in time for Christmas could actually be worse for Microsoft's market and mindshare than a well-executed release a few months later. Expect a concurrent release with Windows 8, but know that Microsoft hasn't yet completely committed to it.
When it is shipped, Windows on ARM should come as a single edition of Windows from a feature standpoint (though the company notes that no decisions regarding new Windows product editions have been finalized) - Microsoft promises to "adjust the features ... such that [WOA] is competitive in the marketplace and offers a compelling value proposition to customers of all types." That doesn't tell us much, but I think we should expect the consumer-oriented features that you'd find in a Home Premium version of Windows along with business-minded features (like domain joining and device encryption) thrown in to increase WOA's appeal to enterprises. Whether the decision to ship a single Windows on ARM SKU will have any effect on the x86 version's army of different editions remains to be seen.
Drivers, Updates, and Hardware
So, since Windows on ARM will only be available on devices designed specifically for it, Microsoft can actually keep track of what hardware WOA devices are guaranteed to be using. This means that all software, from OS patches to device firmware to specific drivers, can and will be distributed using Windows Update. Apple has achieved something similar in OS X - Macs are many and subtly varied, especially when you take multiple model years into consideration, but ultimately there is a finite set of hardware in the field, and Apple can keep every Mac in use up-to-date with drivers, firmware, and OS updates through Software Update, rather than the broad array of different first and third-party updaters required to patch those separate elements on an x86 Windows box (and I promise that I'm just comparing the two to give you a frame of reference, not because I consider one system to be inherently superior to the other).
To reduce the number of drivers it will have to keep up to date, Microsoft is relying heavily on "class drivers" to support hardware in both WOA and Windows 8 - for those of you just tuning in, a class driver is designed to support all hardware manufactured to certain standards, rather than targeting specific devices. They're why you can freely plug in different USB keyboards and flash drives to a Windows computer and have them recognized by the machine without needing to pop in a driver disk first.
A lot of the work Microsoft is putting into class drivers is also applicable to Windows 8 - we've already looked at new class drivers for USB 3.0 controllers, mobile broadband chips, and motion sensors, and we should also see class drivers for printers, Bluetooth, Embedded MultiMediaCard (eMMC) storage, and drivers for different busses and input devices (like the Windows, power, and volume buttons).
Where Microsoft can't create class drivers, it's trying to enforce some common specifications - WOA devices will all have DirectX-capable GPUs and drivers, which will power Metro apps, the Windows UI, and GPU acceleration in Internet Explorer among other things. This baseline has enabled Microsoft to improve on the fallback software GPU driver to enable a nicer-looking display on devices without a specific driver (and also for system diagnostic and information screens). This new soft GPU driver will also be available in Windows 8, where it will replace the standard VGA driver that has been a part of Windows for just about as long as Windows has been around.
WOA systems will also require UEFI firmware and Trusted Platform Module (TPM) hardware across the board to support its secure boot and data encyption features, both of which will also be available to Windows 8 devices with the correct hardware (TPMs have been used to encrypt hard drives with BitLocker since Windows Vista and UEFI is slowly replacing BIOS in OEM PCs, but Windows 8 should push the adoption of both in a wider range of computers).
To see what Microsoft is trying to do with Windows on ARM, the most applicable template to examine is the one the company followed with Windows Phone 7. In both cases, Microsoft is entering an established market where competitors have established footholds through very different strategies (in each case, Apple and its tighty-controlled iOS on one end, Google with its infinitely malleable Android on the other, and a few other competitors fighting for scraps in between) and has tried to forge a middle path. Windows Phone 7 has been a bit of a slow starter because of Microsoft's low profile in the smartphone field and because of some lackluster handsets, but the platform has some very vocal fans - if the company can achieve a similar balance in Windows on ARM and get it to market on competitive hardware by the end of the year, that (combined with Android's relative weakness in the tablet market so far) might just be enough to establish Windows as a major player in the tablet space.
As usual with these Building Windows post summaries, I've relayed and distilled the most pertinent information for Windows users and enthusiasts here. If you'd like to read the full post, which also includes some details about how Microsoft is testing Windows on ARM in its labs and some of the more technical details involved in "porting" Windows from x86 to ARM, it is linked below for your convenience.
Source: Building Windows 8 blog