Microsoft Provides Windows 8 On ARM Technical Details
Steven Sinofsky, President of the Windows Division at Microsoft, has written a long blog post entitled “Building Windows for the ARM processor architecture” where he explains how Windows On ARM (WOA) will be deployed, the steps they took to develop it and what developers can do to program or port existing apps to Windows 8.
Here are some keys and interesting points I noted:
- WOA and Windows 8 for x86/64 PCs will ship at the same time and the user experience should be the same for consumers on both platform. WOA PCs will be powered by Texas Instruments, Nvidia and Qualcomm processors.
- Microsoft will release an Unified OS Binary for WOA – That means one binary will run on all platforms (be it TI, Nvidia or Qualcomm). That seems impressive, and something Linux is not capable of, although much work is done on that and a unified linux kernel should be available in 2014/2015. To be fair, Linux has to support much more platform than Windows 8. WOA will not be available for purchases separately like Windows 8 for Intel/AMD. It will come with the device.
- Metro Style Apps will work on both WOA and Windows 8 x86/64 without modifications– Developers can write applications for the WinRT (Windows APIs for building Metro style apps) using Visual Studio 11 tools in C#/VB/XAML and Jscript/ HTML5. Native code targeting WinRT is also supported using C and C++, which can be targeted across architectures and distributed through the Windows Store.
- Old x86 applications won’t run on Windows 8 for ARM – Microsoft would have to virtualize / emulate x86 in ARM, which would probably not provide a satisfying user experience and badly drain the battery.
- Office 15 will be available on WOA – Microsoft Word, Excel, PowerPoint, and OneNote will run on ARM targets. This version of office is optimized for touch and low power.
- Microsoft will provide test WOA PCs to selected developers and hardware partners. Those devices will be running the same branch of Windows 8 on x86/64 as we release broadly at that time. These are not forthcoming PCs, but tools for hardware and software engineers running WOA-specific hardware.
- Microsoft will release Windows Consumer Preview at the end of February. Anybody will be able to download this version of Windows 8, but it will only support x86/64 architecture.
- WOA Power Management – WOA PCs will not be turned off, and there won’t be hibernate or sleep options. Instead a “Connected Standby” mode will be used where the PC switch to low power mode and is still able to connect to networks, similar to what is done with smartphones today. This could imply that Windows 8 PCs for ARM will have to have a battery.
- Building Windows 8 for ARM Timeline– He described the chronology of ARM development as follows:
- Toolchain for ARM in Visual Studio
- UEFI and ACPI Firmware
- Windows Hardware Abstraction Layer (HAL)
- Devices/Buses (UART, SD I?O, eMMC, GPIO…)
- Connected device services (GPS, Printer, Bluetooth..)
Most of the work has been done to port Windows 8 to the ARM hardware, and less work had to be done at the application level as Windows is already designed to support multiple architecture (Intel x86, Alpah, MIPS, PowerPC…)
- Testing Windows 8– This is also interesting. They have a farm of boards to test Windows 8 on ARM where each board in mounted in 1U racks which are then mounted in 42U racks that contain 32 WOA boards and the rest is used for network switches, debug host PC and USB hubs. In March, they will have more than 3200 WOA boards under test.