Jerry Nixon on Windows

Monday, March 9, 2015

Windows Core is Windows 10 is Windows Core is Windows 10

If you want to understand Windows 10, you need to understand some of the underpinnings that make it possible. It’s more than the next version of Windows. There are engineering accomplishments that have been underway for years; they culminate in a new kind of Windows and a significantly advanced approach to enabling apps across devices.

image

Windows is a large body of code. Its complexity and interdependencies imply a kind of immutability. After all, who would want to pull a loose thread on that complex tapestry? Yet thoughtful Microsoft architects and engineers, almost a decade ago, foresaw a looming problem and decided to fix it before it was at their throats. They plotted to refactor Windows into core components.

Code refactoring is the process of restructuring existing computer code – changing the factoring – without changing its external behavior. Refactoring improves nonfunctional attributes of the software. Advantages include improved code readability and reduced complexity to improve source code maintainability, and create a more expressive internal architecture or object model to improve extensibility.

It was as simple as saying, “Build a starship,” and equally as daunting. One piece at a time Windows’ core was taken out and put back in. This remarkable, multi-year work touched every critical system, resulting in more eyes on the code, more tests, more compatibility, and better implementations. It is difficult to overstate the value of this effort, yet it will likely be the most understated.

With Windows 8, Microsoft announced an engineering marvel: all Windows devices would share one OS kernel. It resulted in little fanfare, probably because its complexities were unfathomable by mainstream marketing and tech media. It was the predecessor ultimately crowning Windows 10 with Windows Core – the completion of an unsung, multi-year refactoring effort.

The return of the king

The first benefactors would be the authors of hardware drivers. Instead of fumbling to create multiple drivers for printers, USB devices, and graphics cards for every possible version of Windows – driver authors now have a path toward a universal hardware driver. Though the winner seems to be the authors, the consumer will ultimately benefit the most from this one.

Because of Windows Core, Windows 10 is a modular, lightweight operating system that can be deployed to various devices with a small storage footprint and memory requirement. If this were not true, how could Windows dream of shipping on a Raspberry Pi (for instance)? But, it does. Windows is everywhere, shipping its core components without interdependencies on irrelevant, heavy, device-specific subsystems.

What’s more, the Window desktop is awesome. How does Microsoft deliver this rich functionality? By adding to the Windows Core with desktop-specific capabilities tailored for desktop users. These do not ship to Xbox, as an example, because Xbox has its own console-specific capabilities for to deliver incredible experiences to Xbox users. Yet both share the Windows Core.

Let’s be clear, Windows Core is not a new Windows SKU. Windows Core is the name given to the subset of common Windows code enabling the fundamental features of Windows across devices. The subset upon which features are added to enable a SKU.

Common across every device is Windows Core. This enables a consistent, reliable operating system made modular and delivered without the weight of one device family constraining another. The delicate work of maintaining a reliable code base while continually moving forward across such an implausible timeline might be Windows 10’s magnum opus; one we will likely never discuss again – not adequately.

The man from Snowy River

To the team, I tip my hat.