Microsoft's rethinking of Windows is starting to emerge from the shadows.
It's no secret that Microsoft is working on a major change to Windows. Expected to ship first with the rumoured Andromeda folding pocket PCs, it's the culmination of years of work rearchitecting Windows, making an OS originally designed back in the 1990s ready for the next 20 or so years of computing.
So what is this new Windows, and where did it come from?
Re-engineering Windows from the bottom up
At the heart of Windows, in all its versions from the dormant Mobile to Windows 10 Team on the wall-sized Surface Hub, and from IoT Core to the Data Center release of Windows Server, is the Windows kernel. It's a relatively small piece of code, but it's key to the operation of Windows, handling all access to system resources and managing the operations of your applications.
Over the years the Windows kernel and the code around it had grown intertwined, resulting in a complex set of interdependencies that made it hard to refactor Windows. During the Vista and Windows 7 period a major project, often referred to as MinWin, worked to untangle this spaghetti code, with the aim of providing a clear dividing line between the core of Windows and the rest of the operating system. The old mix of dependencies was carefully unraveled, ensuring a strict hierarchy of code that was easier to understand and a lot easier to maintain.
Microsoft could take this new kernel, bundle it with support code, and have a basic bootable OS. It wouldn't have a UI, or many of the features we've come to associate with Windows, but it would be able to run. Like the Linux kernel, it would allow Microsoft to add any user experience it wanted, and could be tuned to run on different processor architectures. Windows 8 and Windows Phone 8.1 were built on this platform -- both radically different, but still able to share code.
The Windows we use today is the result of that process, with a common core that handles most Windows operations. OneCore, as Microsoft calls it, is under the hood across its entire product range, running Windows on the desktop, on the server, on HoloLens, and on Xbox. Each version has its own user experience, all developed separately, but now building on top of the same foundation, with the same APIs.
SEE: Windows 10 power tips: Secret shortcuts to your favorite settings (Tech Pro Research)
There's a lot to like with this model: it means Microsoft only has one set of core services to develop and maintain. New features can be rolled out quicker, and simplified services and platforms are easier to deliver. Without OneCore we wouldn't have the small and fast container-focused Nano Server, or the single-purpose virtual machines that sit behind Windows App Guard and the new Windows log on system. With defined APIs, it's now relatively easy for Microsoft to bundle the OS features that are needed to support an application like Edge, allowing it to run isolated from the rest of the OS.
And now One Shell
With a single core to its OS, the obvious next step is to unify application and UI development. That's where a new composable shell is intended to operate. Known as CShell, it's a UI layer that can adapt to different platforms, scaling to different screens and to different user interactions. It's an approach that can deliver common features across all your devices, while still supporting the way they're intended to work: PCs will have the familiar taskbar and menu, mobile devices a start screen, and mixed reality its floating UI elements, for example.
We don't know much about CShell, although an early test version did leak a year or so ago, in an Insider build of Windows 10 and Windows 10 Mobile. Still with the familiar Windows, it made using Microsoft's phone-PC Continuum experience much more desktop-like.
Microsoft has kept CShell's development close to its chest. However, clues to its capabilities have been found in Microsoft's UWP SDKs, revealing support for new device form factors including dual screen and multi-screen operations that seem to be intended for the folding-screen Andromeda device and its third-party equivalents. Originally expected in late 2018, Andromeda seems to have now been pushed back to sometime in 2019, along with a delay to its CShell-based Windows.
A new Windows for new devices
There's not been much to see since that accidental leak, although we recently got more clues as to how it will behave and when it's likely to arrive when Microsoft revealed more details of its next-generation Surface Hub, the 50.5-inch Surface Hub 2, at Ignite in September.
SEE: Windows spotlight: 30 tips and tricks for power users (Tech Pro Research)
Originally revealed with the ability to link screens together and to smoothly rotate from portrait to landscape orientations, the first tranche of Hub 2 devices won't have that capability. Instead they're going to ship with a replaceable compute module that will initially run an updated version of the current Hub Windows, with its user-less approach to collaborative computing. It won't tile screens, or rotate -- it'll only be the Hub's version of Windows 10 running on new hardware.
With the delays to Andromeda and to CShell, Microsoft's decision to ship an interim Hub 2S, makes a lot of sense: Surface Hub has been selling well and while the new version won't have the new features, it'll be lighter and more portable. You'll still be able to use it for meetings and for collaboration.
The promised new features will be delivered in 2020 as the Hub 2X, with a new compute module that'll also slot into the Hub 2S, replacing the original module, which will be returned to Microsoft for recycling.
A device like the Hub 2X will be an ideal candidate for an early CShell implementation. As CShell is apparently limited to only UWP applications, using it on a device that only runs a handful of Microsoft-provided apps makes a lot of sense. It'll allow Microsoft to showcase CShell's tiling and rotation features, and demonstrate working with one application across multiple screens and devices. There's no need to rely on developers committing to new UWP APIs, as Microsoft can use its own development teams, tying Surface Hub 2X to its Microsoft 365 management and application service.
OneCore and CShell together allow Microsoft to experiment with new device form factors without affecting the rest of Windows. For Andromeda that's going to be an OS and apps that can handle folding screens, and for Surface Hub 2X they're apps that can tile across multiple screens, and handle a switch from portrait to landscape.
Bringing out a new Windows on new devices in new categories is sensible. It allows Microsoft to experiment in public without making a big-bang change on a par with the shift from Windows 7 to Windows 8. Rolling out those changes on a smaller, controlled fleet of devices reduces risk, manages expectations, and allows Microsoft to see how users respond to new ways of working and new tools -- whether they're folding connected PCs in your pocket, or wall-sized collaboration platforms.
Read more about Windows
- Microsoft resumes rollout of Windows 10 version 1809, promises quality changes (ZDNet)
- Microsoft re-releases Windows Server 2019 (ZDNet)
- Microsoft halts rollout of Windows 10 October 2018 Update: What happens next? (ZDNet)
- Microsoft pulls Windows 10 October Update (version 1809) (ZDNet)
- Windows 10 October update delete your files? This tool might recover them (ZDNet)
- Windows 10 October update problems: Wiped docs, plus Intel driver warning (ZDNet)
- Windows 10 1809: Microsoft reveals features it's dropping in October 2018 Update
- Top ten features in the Windows 10 October 2018 Update
- Top ten enterprise features in the Windows 10 October Update