How Microsoft is moving towards a single platform

Common Core draws desktop, phone and Xbox together

Xbox Dashboard

Steve Ballmer's usual bombastic delivery caused a flurry of excitement among Microsoft sharehoiders recently.

Ballmer's ability to speak for several minutes without stopping for breath made it sound like he was announcing Windows 8 on smartphones at the annual shareholders meeting and confirming some recent rumours.

The transcript of the event makes it clearer that what's he's talking about it something more complex but also more important (and more realistic).

"Are we in a post-PC era?" asked a shareholder. No, retorted Ballmer; "We are in the Windows era. We were, we are, and we always will be. That's kind of what we get paid to do. We've got broad Windows initiatives driving Windows down to the phone. With Windows 8, you'll see incredible new form factors powered by Windows from tablets, small, large, pens, smaller, bigger, room-sized displays."

But even though the next major version of Windows Phone, Apollo, isn't going to be Windows 8, it is going to bring Windows Phone closer to the Windows platform – as is the future of Xbox.

Common core

Apollo is part of what Microsoft refers to internally as 'common core' as is the next version of Xbox. (Internal Microsoft terminology can be opaque; everything about Windows 8 was known internally as 'modern' so the WinRT frameworks were called MOSH or Modern Shell for a long time.)

That doesn't mean that Windows 8 will run on smartphones or on the new Xbox hardware – even though the ARM version of Windows 8 means that's technically possible.

There are large parts of Windows that simply aren't needed on a phone or an entertainment system (which is what Xbox is evolving into) and would compromise the experience.

On Windows, for compatibility, Microsoft can't throw away everything that desktop apps need – and it doesn't want to; desktop PCs that run complex applications are going to be as important to Windows 8 as ARM tablets, even if the Windows team hasn't yet convinced everyone that they do understand that.

Just cutting Windows down isn't the right approach – and nor is taking the Windows 8 kernel and re-using that on the phone.

Underneath Windows Phone is Windows CE and Windows CE isn't a true real-time operating system; it doesn't need to be, because the part that needs to respond in real time is the phone – the radio stack.

The radio stack is no longer part of the operating system directly; it's a black box that different phone makers can swap in and out.

That's what Nokia will do when it switches to the ST-Ericsson NovaThor platform instead of the Qualcomm Snapdragon that's featured all the Windows Phone handsets so far. Applications and the Windows Phone OS won't care that the radio is different because the integration will have been done in the NovaThor platform.

Even though it's not real time, the Windows CE kernel is probably a better fit for Windows Phone than the Windows 8 kernel; the power management is still better and the kernel timer is better at coping with asynchronous demands. It may be that Microsoft believes that the Windows 8 kernel will be good enough to run Windows Phone – and that it will be done in time for the Windows Phone team to use for Apollo, which we're expecting next autumn.

But there's another option. Thanks to the refactoring program we know as MinWin, the Windows 8 kernel is no longer so closely tied to the Windows platform, making it much easier to make changes at different levels.

MinWin: breaking up Windows

Since 2004, Microsoft has been looking at the layers and components that make up Windows and tidying up the complex mesh of EXEs, DLLs and APIs to make them easier to disentangle.

In 2009, Mark Russinvoch was working on the Windows kernel and he explained MinWin to us like this; "Everything depends on everything. We've got 600 binaries [in Windows]; if we took one of them away, we'd break stuff and we can't even tell you what would break. When we go and change Windows, we end up changing the behaviours of those interconnects at deep levels."

MinWin documents the interconnections so Microsoft can switch out pieces of the operating system without breaking things.

MinWIN

MINWIN: It's not a layer of Windows, it's a refactoring project that helps Windows change seamlessly

As part of Minwin – which is an on-going effort – instead of having a single library that handles different things to do with sound, some of which are at a very low level and others that are far simpler, Windows might have three separate libraries.

For the sake of compatibility, Windows goes on pretending there's one library, but when Microsoft wants to update a feature – or make it work on a different platform - it only has to change one of the libraries.

Thanks to the MinWin changes, instead of putting the Windows 8 kernel under the Windows Phone operating system, Microsoft can take the layers of Windows it wants to use on Windows Phone and put those on top of the Windows CE kernel.

Windows Phone, Windows 8 Metro applications and Xbox already have overlapping technologies and development models.

XNA powers Xbox and Windows Phone games; the XAML that makes Metro apps look good is remarkably similar to the Silverlight that Windows Phone apps are built in – and they both descend from the .NET framework inside Windows.

But the services they work with on each platform are very different. Move the WinRT frameworks to Windows Phone and to Xbox – which is getting Silverlight support somewhere down the line – and you have a common core of technology for apps to use, but you still have the right technical underpinnings for each operating system.

That means Windows Phone isn't Windows on a phone; but it is technologies from Windows on a phone, and technologies from Windows on an Xbox.

If Microsoft gets it right, common core will be the best of both worlds with a single core platform for the company to work on. And even more than competing with the best-selling and popular Windows 7, that's why Windows 8 is such a big bet for Microsoft.

-------------------------------------------------------------------------------------------------------

Liked this? Then check outHow Windows protects your PC

Sign up for TechRadar's free Week in Tech newsletter
Get the best tech stories of the week, plus the most popular news and reviews delivered straight to your inbox. Sign up at http://www.techradar.com/register

Follow us on Twitter * Find us on Facebook * Add us on Google+