Windows Store for developers blog
Windows 8 app developer blog
IE Blog
The Windows Blog
Inside SkyDrive blog
Download Windows 8 Release Preview
Windows Dev Center
Follow us @BuildWindows8
The //build/ conference
Windows 8 Release Preview forums
Developer forums
One of the notable aspects of Microsoft Windows has been the flexibility the architecture has shown through shifts in technology and expansion of customer usage over time. What started out as an operating system for one person working solo with productivity software is now the foundation of a wide array of hardware and software technologies, a spectrum of connected Windows products, and an incredibly flexible approach to computing. With Windows 8, we have reimagined Windows from the chipset to the experience—and bringing this reimagined Windows to the ARM® processor architecture is a significant part of this innovation. Expanding the view of the PC to cover a much wider range of form factors and designs than some think of today is an important part of these efforts. Windows on ARM enables creativity in PC design that, in combination with newly architected features of the Windows OS, will bring to customers new, no-compromise PCs.
This post is about the technical foundation of what we call, for the purposes of this post, Windows on ARM, or WOA. WOA is a new member of the Windows family, much like Windows Server, Windows Embedded, or Windows Phone. As with those products, WOA builds on the foundation of Windows, has a very high degree of commonality and very significant shared code with Windows 8, and will be developed for, sold, and supported as part of the largest computing ecosystem in the world. Today we’ll focus on the development of WOA and introduce some of the features, along with how customers will experience it. As with x86/64 Windows 8, there are still announcements to be made relative to the business and marketing aspects of the product(s). Today’s blog post is about making WOA, not marketing or selling it.
At the same time, while this post is exclusively on our work on WOA, we have had a deeper level of collaboration with Intel and AMD on the full breadth of PC offerings than in any past release. Windows 8 innovations on powerful and richly capable x86/64 processors, and work on new low-power processors such as those that Intel demonstrated at CES, require an equally strong commitment, even larger engineering investment, robust new designs, and improved architecture for Windows across these platforms. While discussing our engineering for ARM processors, it is important to keep in mind that in addition to all of the new work for the ARM platform we have done, much of the work discussed in this post applies directly to the x86/64 platform and Windows 8 as well. We could not be more excited or supportive of the new products from Intel and AMD that will be part of Windows 8—across a full spectrum of PC form factors including tablet, notebook, Ultrabook™, all-in-one, desktop, and more that all take advantage of the new capabilities of Windows 8 while Windows 8 takes advantage of new features in hardware.
Using WOA “out of the box” will feel just like using Windows 8 on x86/64. You will sign in the same way. You will start and launch apps the same way. You will use the new Windows Store the same way. You will have access to the intrinsic capabilities of Windows, from the new Start screen and Metro style apps and Internet Explorer, to peripherals, and if you wish, the Windows desktop with tools like Windows File Explorer and desktop Internet Explorer. It will have the same fast and fluid experience. In other words, we’ve designed WOA to look and feel just like you would expect. WOA enables creativity in PC design that, in combination with newly architected features of the OS, will bring to customers new no-compromise experiences.
As an in-depth engineering dialog, we tend to favor the long form for Building Windows 8 posts, and this post is no exception. It does seem like a good idea to first provide a summary of the important items we are going to cover in detail in this post:
This post is organized with the following sections: Working with partners, Providing apps, Engineering for ARM (which will go through the various subsystems), Developing for ARM, Delivering WOA PCs, and finally, Next steps.
We’ve also prepared a short video demonstrating WOA as described in the post.
Your browser doesn't support HTML5 video. Download this video to view it in your favorite media player: High quality MP4 | Lower quality MP4
Developing WOA begins as a partnership with companies that make ARM processors and package them together with the subsystems required to deliver the equivalent of a motherboard. Unlike the boards many are familiar with, you can think of a WOA board as a silicon package—a series of silicon layers bound together in an incredibly small form factor, called a System on Chip or SoC.
CES 2011 demonstration showing a System on Chip (SoC). (Julie Jacobson, Associated Press)
Each ARM licensee building these packages takes a different approach to selecting features, making product trade-offs, and designing the complete silicon package. These choices are what bring the diversity of different products built on ARM to the market. There is no single ARM experience, and as we have seen with other operating systems, even the same ARM CPU combined with different components, drivers, and software can yield different types or qualities of experiences. That is why from the start of the WOA project, we have been working with three ARM licensees: NVIDIA, Qualcomm, and Texas Instruments. Each brings different expertise and different approaches, and all will make a unique contribution to WOA. All of them have extremely successful ARM-based products in the market today, from tablets to smart phones to e-readers to embedded devices. We are fortunate to have the support of such amazing partners, and WOA is unique in working with such diversity.
A SoC package by itself is just the beginning. Delivering WOA PCs is a partnership with PC manufacturers who bring their expertise in manufacturing, system engineering, and industrial design and combine that with the engineering work of ARM partners to develop a complete PC. PC makers also bring expertise at selling PCs to consumers and businesses through a variety of channels and supporting those purchases over time.
Microsoft’s role in this partnership is to deliver a Windows operating system that is tuned to this new type of hardware, new scenarios, and new engineering challenges. Our goal is to make sure that a reimagined Windows delivers a seamless experience from the chipset through firmware, through hardware, through the OS, through applications, and ultimately to the person interacting with the PC. This is a new level of involvement that brings with it a new level of engineering work across all of the parties involved. This new approach is about delivering a unique combination of choice, experiences, and a reliable end-to-end experience over the life of the PC.
Before we dive into the details of the changes to the underlying implementation of Windows to support ARM hardware, let’s start at the top and talk about what apps Microsoft will offer (we’re all happy to see a renewed use of the term “apps”—my first business card at Microsoft in 1989 read Software Design Engineer in Apps Tools, Apps Division.)
We have not yet announced the editions or SKUs we will have for any new Windows products, and during the pre-release phase we include almost all features in the software as a way of testing and exercising the full surface area of the product. You can expect that we will adjust the features included with the single WOA offering such that it is competitive in the marketplace and offers a compelling value proposition to customers of all types.
As we announced and demonstrated at //build/ and other forums, WOA has all the WinRT capabilities present in the Windows Developer Preview, and all the tools and techniques that you can use to build new Metro style apps for x86/64 are available to developers to also target WOA. Developers can use our tools to create native C/C++ code for maximal performance and flexibility, in addition to the C#, XAML, VB, and HTML5 based tools, to target apps for WOA, so long as their code targets the WinRT API set. Additionally, developers with existing code, whether in C, C++, C#, Visual Basic, or JavaScript, are free to incorporate that code into their apps, so long as it targets the WinRT API set for Windows services. The Windows Store can carry, distribute, and service both the ARM and x86/64 implementations of apps (should there be native code in the app requiring two distributions).
We have also previously demonstrated Microsoft’s new Metro style apps for connecting to cloud-based services like Hotmail, SkyDrive, Messenger, and— through those services—a wide variety of third parties. For example, our mail app connects to industry-standard EAS, which covers an array of enterprise and consumer-based mail, calendaring, contacts. With existing Live Connect capabilities, you can chat with your Facebook friends, or keep up-to-date on your LinkedIn or Twitter feeds all in a Metro style app—these are just a couple of examples of over 100 different services globally that you can connect to your Microsoft account. These apps are provided with WOA, but of course, people can remove these, set different defaults, or use the Windows Store to get similar apps from third parties. In addition, any Metro style app in the Windows Store can work with any service it chooses, with or without using any Microsoft services—and this spans the range from sign-in, communications, in-app payments, to advertising services.
In the next pre-release of Windows 8 you will also see Metro style apps available from Microsoft that support a wide variety of industry-standard media and document formats, along with Internet Explorer 10 which supports the standard HTML5 web platform. We believe that the level of standards support provided in WOA is among the best in class, and comparable in scope to competitive products. And of course, our intent is to lead in the industry in providing end-user choice and control over the apps on your system and what you choose to run.
The availability of the Windows desktop is an important part of WOA. The desktop offers you a familiar place to interact with PCs, particularly files, storage, and networking, as well as a range of peripherals. You can use Windows Explorer, for example, to connect to external storage devices, transfer and manage files from a network share, or use multiple displays, and do all of this with or without an attached keyboard and mouse—your choice. This is all familiar, fast, efficient, and useful. You’ll have access to a deep array of control panel settings to customize and access a finer-grained level of control over your system, should you want to. And if you’ve used the Developer Preview with a touch-capable PC, you know that the desktop user-interface has been refined for touch interaction with improved user-interface affordances.
At the same time, WOA (as with Windows 8) is designed so that customers focused on Metro style apps don’t need to spend time in the desktop. Availability of the desktop incurs no runtime overhead. It is just there should you want or need it. Below, we will describe the technology behind the scenes that goes into making sure that the availability of the desktop does not compromise system security, reliability over time, performance, or power consumption of a WOA PC. To those of you who’ve tried out the Developer Preview, you’ll notice that the user experience has continued to evolve and you will see a broad set of improvements in the upcoming Consumer Preview.
Some have suggested we might remove the desktop from WOA in an effort to be pure, to break from the past, or to be more simplistic or expeditious in our approach. To us, giving up something useful that has little cost to customers was a compromise that we didn’t want to see in the evolution of PCs. The presence of different models is part of every platform. Whether it is to support a transition to a future programming model (such as including a virtualization or emulation solution if feasible), to support different programming models on one platform (native and web-based applications when both are popular), or to support different ways of working (command shell or GUI for different scenarios), the presence of multiple models represents a flexible solution that provides a true no-compromise experience on any platform.
Within the Windows desktop, WOA includes desktop versions of the new Microsoft Word, Excel, PowerPoint, and OneNote, codenamed “Office 15”. WOA will be a no-compromise product for people who want to have the full benefits of familiar Office productivity software and compatibility, an industry-leading hardware-accelerated web browser, apps from Microsoft, and access to apps in the Windows Store.
This creates a WOA PC with the full power of apps, media consumption, entertainment, mobility, and productivity in one place—a true no-compromise experience. The new Office applications for WOA have been significantly architected for both touch and minimized power/resource consumption. This engineering work is an important part of being able to provide Office software with WOA, as these are not simply recompilations or ports, but significant reworking of the products with a complete and consistent user experience and fidelity with their new x86/64 counterparts.
You can learn more about the next version of Microsoft Office, codenamed “Office 15,” on the Office Exec blog.
Enabling Windows to run super well on the ARM architecture is a significant engineering task. We undertook this work because when you look to the future you can see that so many of the capabilities that have been added to Windows over the years are things that customers will inevitably desire or require in the types of devices supported by today’s ARM-based products—changes in form factors and the desire for mobility only add to the scenarios and capabilities we all desire in our search for no-compromise PCs. While it is tempting to make bold statements about “starting over,” we believe in the evolution of technology assets when the foundation is strong. The foundation of Windows, the core, is the most solid, scalable, and secure one around. Our desire to deliver a no-compromise experience motivates our efforts.
We also know that there are elements of Windows that require re-engineering in order to meet customer expectations for reliability over time, power consumption, resource utilization, and instant connectivity and availability. Obviously, all of this work is relevant to our Windows 8 on x86/64 product too, and much of what we have done for ARM will be applicable to the exciting new products coming from Intel and AMD (which are not the subject of this post). ARM affords us a chance to look at assumptions in OS behavior and programming model in order to deliver significant improvements.
One of the new aspects of WOA you will notice is that you don’t turn off a WOA PC. WOA PCs will not have the traditional hibernate and sleep options with which we are familiar. Instead, WOA PCs always operate in the newly designed Connected Standby power mode, similar to the way you use a mobile phone today. When the screen is on, you have access to the full power and capabilities of the WOA PC. When the screen goes dark (by pressing the power button or timer), the PC enters a new, very low-power mode that enables the battery to last for weeks. All along, however, the system dynamically adjusts power consumption and is always on the lookout for opportunities to reduce power to unused parts of the system. For end-users, a unique capability of WOA is that you are in control of what programs have access to background execution so that those apps are always connected, and information like new mail is always up to date. Connected Standby permeates the engineering for WOA PCs from the hardware through the firmware, OS, WinRT platform, and apps. Connected Standby won’t be limited to the ARM architecture and we are actively working on these capabilities for x86/64 SoC products as well.
Today, we are familiar with a PC experience where hardware that runs Windows built on x86/64 adheres to a set of technical specifications that allow one distribution of Windows code to install and run on a wide variety of PCs. This has enormous benefits of scale. This openness is also the hallmark of the PC revolution and represents the collective work of the industry since about 1980. When new hardware comes along that is broadly supported, these baseline specifications evolve, and the PC architecture moves forward. Absolutely nothing about this approach will change for Windows 8—as millions have experienced with our Windows 8 Developer Preview, Windows 8 will run on every Windows 7 logo PC, and will run all of the existing software and peripherals designed for and supported on Windows 7 (when supported on Windows 8 by the manufacturer, of course).
The approach taken by ARM Holdings, the licensor of ARM products is, by design, not standardized in this manner—each device from each manufacturer is unique and the software that runs on that device is unique. There is of course a standard instruction set and CPU architecture, one that is always improving (for example, adding 64-bit support and multiple cores), but many of the connections between the CPU and other components are part of the innovation each licensee brings to the ARM platform. Commonality across devices can occur under the hood, but is not applicable or significant to consumers. End-users are technically restricted from installing a different OS (or OS version) on a device or extending the OS, so this is generally not possible, and rarely supported by the device maker. Device makers work with ARM partners to create a device that is strictly paired with a specific set of software (and sometimes vice versa), and consumers purchase this complete package, which is then serviced and updated through a single pipeline. The cross-partner, integrated engineering of these embedded devices is significant. In these ways, this is all quite different than the Windows on x86/64 world.
With WOA, we set out to define a new way of developing a computing platform. We architected our approach to ensure that software and peripherals can all benefit from the diversity enabled by the ARM architecture, along with the choice of form factors and manufacturers, and the openness of the platform. At the same time we are making a commitment to customers that WOA will be consistent in capabilities, experience, and baseline performance across this spectrum. To those familiar with the Windows Phone 7 approach, the chassis specification, WOA shares some of those elements. The specifications being implemented for WOA allow for more diversity across many dimensions, combined with the same commitment to engineering and product excellence—all while running the same OS binaries across WOA PCs.
Engineering for ARM starts with the work we did to architect the Windows kernel so it could boot and run on ARM. As you might imagine, this was a significant effort. Some might believe that this is work along the lines of porting or merely re-compiling the code for a new instruction set. There’s much more to the work than that when it comes to the kernel and the parts of Windows that connect with hardware. Along with the kernel work, we also had the work to develop the ARM compilers and tools (including Visual Studio), for building Windows.
At the higher levels—the application layers—the code is significantly portable because of our long history of running on multiple architectures (x86, x64, PowerPC, Alpha, MIPS, IA64, and so on). Even the kernel itself has a significant amount of code that can be ported. At the hardware/software seam and all the places that make assumptions about how an OS interacts with hardware, Windows has been reimagined for this new platform. To put some acronyms around this, the ARM definition does not require support for some common subsystems such as the PCI bus or SATA. There are analogous concepts implemented by each ARM implementation, but those are not always common. All of this was done over the course of iterating on three major revisions of ARM hardware since the start of the project.
Let’s look at some of the types of work undertaken as part of this effort, which we referred to internally as “porting,” despite the fact that it is so much more than that. Keep in mind that all of this work has been going on in parallel with the development of the user experience, Windows Store, WinRT, and new features across Windows 8.
Before the porting work could even begin, we needed an ARM compiler and tool chain for building Windows. Since other products at Microsoft (such as Windows Phone and Embedded) use ARM processors, we had these pieces, but further improved them to build Windows. These tools are going to be available to developers, and if you’re using C#/VB/XAML/HTML5 in the Windows 8 Developer Preview, then you’re already on board. C/C++ requires ARM native hardware for testing, which we’ll talk about below.
Once we had the tools, we could start porting the Windows boot environment and developing system firmware specifications. We even prototyped the firmware ourselves. There are several pieces to this:
From the firmware, the system can then load the boot manager, boot loader, and in turn the kernel, HAL, and boot device drivers.
In order to load device drivers and continue Windows boot, we had to build several new drivers for new types of low-power busses, plus device drivers that support connections to those busses.
Our device strategy uses standardized protocols and class drivers extensively. Our first example below is the HID over I2C driver which we use for touch controllers and many sensors, another is the class driver for USB connected mobile broadband radios. Of course, Windows has many class drivers inside, which you experience when you plug in a wide variety of USB devices, such as storage, mice, or keyboards.
Once the firmware, HAL, boot services, boot devices, and busses were up and running, we were ready to bring up the rest of the system and get to the desktop and the Start screen.
At this point we had the majority of the system running, and it was time to bring on the services to support the full breadth of Windows. These are common across the architectures that Windows supports, so that developers can take advantage of them in Metro style apps.
As you can see, some of this engineering work is strictly adapting to the new hardware platform. Some introduces substantially new types of hardware support. In large part this work accrues to the x86/64 platform especially cutting edge products, such as the new low power ATOM® processors, demonstrated by Intel at CES.
A significant amount also propagates to the application layer and becomes defining elements of the new WinRT APIs introduced at //build/. For example, while we engineered the kernel to support Connected Standby, delivering great battery life is really part of the overall WinRT application model and even the toolset, and all of that applies across WOA and Windows 8 on x86/64.
As we mentioned, a portion of Windows is generally built with code that can be made to work on ARM in a technically straightforward manner. These subsystems include the Windows desktop and applets and supporting APIs, though we needed to significantly re-architect all of them for better resource and power utilization. In fact, here is an early photo of an ARM device (an early Windows phone) running the full Windows desktop. Early in the development of WOA, the only hardware we had were existing ARM devices such as phones (ARM tablets didn’t yet exist). We just thought you would enjoy a few fairly early photos I captured of debug WOA all loaded in RAM (unretouched). Note: This is not a product plan or even a hint at a product.
You might be wondering how we are testing WOA in our labs. For x86/64 we run massive labs (thousands of machines, real and virtualized) and highly automated test runs for every single daily build. WOA required us to reimagine our own lab and test processes. For testing x86/64, it is simple to just order thousands of rack-mounted servers, or even virtualize them; for ARM, there are no standard rack-mounted servers that can run WOA. Since we’re doing highly integrated hardware/firmware/software development, and virtualization is not helpful, we had to devise our own approach.
We consolidated hundreds of ARM development boards along with a custom I/O board into a rack assembly connected to our testing infrastructure. Our original design focused on density supporting 300 ARM devices in one rack, but we ultimately preferred the diagnostics and availability of a custom I/O board in the 1U setup.
We designed our own 1U chassis that fits into a standard server rack. Either a full form-factor device or just the motherboard can be dropped into this chassis. Once fully assembled, the SoC board in conjunction with the IO board and chassis looks, feels and operates like a standard rack mount PC and fits right in with existing lab infrastructure.
Each 42U rack holds 32 WOA chassis plus network switches, debug host PC, and USB hubs. By March we will have over 100 fully populated racks for WOA testing.
We also had to port our test tool infrastructure and tests too, which was no simple challenge, but this ensured that we would cover WOA with the same rich automation used to validate Windows 8. Here’s a photo of our newly devised test rack, and the board and debugging ports that it hosts:
In practice all of this is even more in-depth than it looks. We also took this chance to do a very significant re-engineering of every Windows subsystem. In the course of building WOA and Windows 8, we invested a huge amount of energy into changing all of Windows to work better at minimizing overall power consumption and resource utilization, while simultaneously delivering improved real-world performance for existing application workloads. In previous posts on boot, power management, and memory usage, you have seen the results of some of this work.
Previously we have detailed that WOA will not support any type of virtualization or emulation approach, and will not enable existing x86/64 applications to be ported or run. Supporting various forms of emulation runs counter to the goal of delivering a product that takes a modern approach to system reliability and predictability—by definition, existing code has not been optimized for the platform the way WOA has. Virtualized or emulated software will consume system resources, including battery life and CPU, at unacceptable levels. Emulation and virtualization of existing x86/64 software also require the traditional PC environment of mouse and keyboard, which is not a good assumption for WOA PCs.
If we enabled the broad porting of existing code we would fail to deliver on our commitment to longer battery life, predictable performance, and especially a reliable experience over time. The conventions used by today’s Windows apps do not necessarily provide this, whether it is background processes, polling loops, timers, system hooks, startup programs, registry changes, kernel mode code, admin rights, unsigned drivers, add-ins, or a host of other common techniques. By avoiding these constructs, WOA can deliver on a new level of customer satisfaction: your WOA PC will continue to perform well over time as apps are isolated from the system and each other, and you will remain in control of what additional software is running on your behalf, all while letting the capabilities of diverse hardware shine through.
Our focus on delivering a new level of security for consumers using WOA is paramount. In one public event, we were asked if we would “make it easy for existing viruses and malware to run.” Now you can see the answer is decidedly, “no.” In fact, WOA only supports running code that has been distributed through Windows Update along with the full spectrum of Windows Store applications. As we all know, security is an industry-wide, multi-dimensional challenge and no system or platform can make broad claims without considering many factors.
If you need to run existing x86/64 software, then you will be best served with Windows 8 on x86/64. If you’re already considering a non-Windows device, then we think WOA will be an even better alternative when you consider the potential of form factors, peripherals, Windows Store apps (and developer platform), and Office applications as well as a broad set of intrinsic Windows capabilities.
Of course, we recognize that many developers at Microsoft and elsewhere rely on existing programming techniques, and that a transition to WOA will require an investment. Developing apps based on WinRT addresses these and many other challenges from the start—WinRT is designed to provide the full expressive power required for modern software while avoiding the traps and pitfalls that can potentially reduce the overall experience for consumers and does so with a deep commitment to tools, languages, and developer support.
Developers wanting to reach WOA with existing apps have two options. Many apps will be best served by building new Metro style front ends for existing data sources or applications, and communicating through a web services API. This approach will be quite common for line-of-business applications and many consumer web properties, and represents the best way to tap into the power of a rich user interaction model where you can also interact across and share information with other new apps. Of course, these do not need to be just front-ends, but could operate on local data too, since WOA provides full access to files and peripherals. Other existing applications will be well served by reusing large amounts of engine or runtime code, and surrounding that with a Metro style experience. This will take some time, and represents a way for applications that are composed of significant intellectual property to move to WOA and WinRT. In all cases, WinRT represents the new set of Windows OS services that developers can use to build software that is Designed for Windows 8.
Returning to our architecture diagram from //build/, from a third-party developer perspective, the best way to think of WOA is as the expression of the Metro style platform, which shares the Windows Core OS with all the other Windows products. The Windows Core OS has been tuned and architected to support the ARM platform and is there to support the WinRT APIs and programming model used by third parties.
The topic of engineering for ARM is a broad one and has occupied many on the Windows team for the course of the project. The next step is delivering WOA code more broadly, but that starts with how we’re going to bring WOA PCs to market.
Since the conclusion of the Windows 7 project we have been working with PC makers on the evolution of Windows and the creation of Windows 8. There is a vast amount of joint work that goes on in order to bring new PCs to market—the “Designed for Windows” logo that you see on a PC represents the collective work of a wide array of partners sharing a commitment to bring new and exciting PCs to market. The model we used and will continue to use to bring x86/64 PCs to market as an industry is the same as we have always used—we will introduce new technologies such as USB 3.0, UEFI, touch, and sensors and support those in a new release of Windows with new hardware. This is a collaborative and ongoing effort, with a great many improvements to be introduced with this product cycle.
Delivering WOA PCs is building out a new system for the first time—a completely new ecosystem of PCs providing opportunities for PC makers to bring to life a new generation of PCs with new capabilities. We describe these PCs as being focused on achieving new levels of capability along three dimensions: thin and light in industrial design, long battery life, and integrated quality.
Because of the necessarily tight connection between SoC, peripherals, firmware, and the OS, WOA PCs should be thought of as joint engineering that goes well beyond industry partners merely collaborating. This is an effort where software people on the Windows team end up debugging silicon with soldering irons, and hardware engineers end up in Visual Studio, debugging timing issues with user interface code. Thus every WOA PC is a new engineering effort that starts with the selection of components and continues through with firmware, drivers, final assembly, and unique apps from PC makers. We also bring new ARM designs up on simulation and emulation platforms to get it right at the start, even before the silicon is available. And we are bringing the ecosystem together to do total platform design for low power, which includes not just a great SoC but efficient radios, sensors and even higher efficiency DC power infrastructure. It all matters for super thin and light PCs, with great battery life, and high-quality engineering providing a great experience with apps and services that are Designed for Windows 8.
While each WOA PC offered will be unique, the role of Windows is to present a consistent experience to customers while allowing the unique and innovative hardware to shine through—the very definition of an OS. To achieve this we have been working with multiple ARM licensees as mentioned—Texas Instruments, Qualcomm, and NVIDIA. Each has been working with partners that will bring WOA PCs to market. These PCs have all been designed and manufactured expressly for WOA. From the chipset through the firmware and drivers, the work is optimized to be great for WOA. Partners are working hard on creative industrial designs and form factors that will include more than tablets. These are all under development today. Our collective goal is for PC makers to ship WOA PCs the same time as new PCs designed for Windows 8 on x86/64, using the latest generation of those platforms from low-power to high-performance.
While not the topic of this post, we do want to assure you that, when a consumer buys a WOA PC, it will be clearly labeled and branded so as to avoid potential confusion with Windows 8 on x86/64. The PC will come with the OS preinstalled, and all drivers and supporting software. WOA will not be available as a software-only distribution, so you never have to worry about which DVD to install and if it will work on a particular PC.
WOA PCs will be serviced only through Windows or Microsoft Update, and consumer apps will only come from the Windows Store, so you never have to worry if a program will run because you are not downloading or installing from a DVD outside of the store experience. A WOA PC will feel like a consumer electronics device in terms of how it is used and managed. For example, as previously detailed, the new refresh and reset functionality will be available, and for WOA this provides the equivalent of a “clean install” or imaging.
There’s much more to this story, and we plan on more posts detailing the engineering of WOA and all the work that went into building the OS based on the dialog that follows this post. Many are keen to get their hands on the software. But of course there is no existing hardware to use as there is with Windows 8 on x86/64, which can make use of PCs designed for Windows 7. We are approaching a step in the project where we intend to broaden the distribution of the WOA software with development hardware.
To run this release, a low volume of test PCs specifically designed for WOA will be made available starting around the next Windows 8 milestone. These devices are for developers and hardware partners, and do not represent consumer form factors, by any stretch of the imagination. They have diagnostic tools and ports. They are designed to be opened and debugged. They do not have the final components or firmware (or power or thermal management) that a commercially available device will use. They are made of low-cost plastic. You might have seen devices similar to these on display at CES or demonstrated there, and all of our previous demonstrations have used some form of these test PCs. These PCs do represent WOA and the experience—but they no more represent the final experience than does the current state of x86/64 Windows 8. They will be running the same branch of Windows that will be made available to x86/64 testers at our forthcoming development milestone.
These PCs are expensive to make and distribute because they are basically low-volume custom PCs. They will be made available through our developer evangelism efforts. We are talking about this not to tease you or to solicit nominations, but because we know word will get out and images of these will be on the web. The devices are all already spoken for and allocated. On the one hand it seems a little cruel to dangle this in front of you, but on the other hand it is worth considering that this level of transparency is a hallmark of how we develop Windows. The scale of the Windows 8 project is significant, and combined with the degree to which we are forthcoming with information and dialog about our decisions, it is without precedent.
By the end of the month, the Windows Consumer Preview (the beta) of Windows 8 on x86/64, will be made available for download. We changed the name of the beta because recently the term has come to mean something very different than just a "testing release available for free to try out," so we did not want to add to the confusion. In keeping with the level of openness described, there is no pre-registration or admission to a test program—just download it and install it on a Windows 7 logo PC (although VMs are supported, that is not the best way to try out the consumer experience). We have made a ton of progress and there are many significant changes since the Windows Developer Preview 5 months ago. As a reminder, we’re still building Windows 8 and WOA, and there is much work to be done to go from pre-release to release. Quality remains our priority. The code is not done.
We are very excited to be approaching this milestone. The responsibility of developing a new release of Windows is humbling, and the challenges of releasing an entire new platform such as WOA are both energizing and daunting. We look forward to welcoming everyone to the Windows Consumer Preview in short order.
On behalf of the Windows team,
Steven Sinofsky