What Could Windows 8 Mean For Mobile? close

Kevin Danaher
In Musings
20th September 2012
What Could Windows 8 Mean For Mobile?

As I write this we’re approaching the two year mark since Microsoft launched Windows phone 7. Since that time it’s not taken over the mobile market but it also hasn’t been an abject failure. Microsoft are hesitant to release figures but reputable market analysts put the percentage of Smartphones sold running Windows Phone currently at between 3 and 5%. This may sound like a tiny figure and a pretty dismal outcome for the worlds leading OS manufacturer but if you take into account that within the next year smartphone sales will hit 1 billion per year and 1.5 billion per year in the following 18 months then it’s a pretty enormous figure. Also take into account that both Android and iPhone handsets had a 3 year headstart on Windows Phone and you can see quite why Microsoft had so much catching up to do.

The funny thing is the catching up isn’t really to do with technology it’s to do with consumer sentiment, mostly with what apps are available in each ecosystem and their popularity. In that regard this next few months are pretty exciting, Microsoft have adopted a pretty incredible strategy which will be nail biting to see executed. Google have Android but no Desktop OS to speak of and Apple have both iOS and Mac OS which are pretty tightly integrated through cloud services but not on a fundamental operational level. Microsoft have taken a huge gamble and integrated their headline operating systems far more closely than anyone would have imagined a few years ago.

What this means for Microsoft (hopefully) is developers... Currently if you want to develop for Windows Phone (WP) you have the option of using the Microsoft XNA framework for Windows Phone or the Silverlight Framework. These are both restrictive in what libraries exist and can be used and you can’t execute anything at a native level, it all has to run through the OS execution layer and is thus restricted by what the OS is capable of. You wouldn’t be able to, for example, write a camera api and directly launch the camera to pull raw image data and flip it onto a memory buffer somewhere. The example I use here was actually a genuine problem until the more recent versions of WP, as Microsoft hadn’t provided a camera api for developers. They had to wait patiently for the new OS and SDK updates to be released in order to make any live camera or augmented reality apps.

WP8 will support native code execution from the get go, this means that any features supported at the lowest level can be integrated into an app, i.e. anything the Operating System can do through the kernel so can your app, with a little work. WP developers have been begging Microsoft for the option to write native code for a long time and no doubt this will imbue a lot of developers with a sense of freedom to achieve all the things they really want in their apps.

So how else has this new strategy affected developers? Well the WP OS used to run on the Windows CE kernel, which is pretty antiquated. It also set it apart from other Windows products which ran on the (almost equally antiquated) Windows NT kernel. Well Microsoft really love that NT kernel, they’re up to version 6.2 for Windows 8 in fact, bringing a slew of improvements that make very little sense to people like us who aren’t low level OS developers. Needless to say it’s a lot better, slimmer and faster than it’s ever been (they’ve even introduced a native kernel hibernation feature allowing machines to wake up in 2 seconds) but not only is the kernel for the main desktop OS drastically improved now the mobile OS runs on that same kernel. Yep you read that right, the fundamental software layer that powers both mobile and desktop operating systems in Windows 8 is the same. Microsoft are calling this their “Shared Windows Core