Windows 8, Metro, and Windows RT

As Microsoft moves toward the release of their new operation system(s), there continues to be some real confusion about terminology and features. I recently was asked by the author of a college textbook to help explain what is happening in the Microsoft space. Below is my response to him.

A good description of what is happening can be found in Brandon LeBlanc’s blog. Windows 8 is the official name for the product that supports x86/64 architectures. Remember that these architectures can be found in both desktop machines and tablets so it is important not to associate Windows 8 with just desktops.

In fact, Windows 8 will include two “modes”. One mode is the classic “desktop” mode and should be viewed as an upgrade from Windows 7. There are no restrictions on storing data or consuming resources because it is assumed that the machine will be connected to external power. However, the other mode, called the “Metro” mode, will restrict applications in terms of the resources they can use and will change how the user will interact with the application. Some of the restrictions include not supporting databases on the client and requiring all communications to be done asynchronously. Interactions will be touch sensitive and respond to a variety of “finger gestures” for user interaction. While metro applications will run fine on the desktop using the mouse and keyboard, they are really designed to focus on the tablet market. Finally, even though a Metro application may be running on a desktop machine plugged into the wall, the restrictions associated with restricted resource consumption will still be enforced.

Windows RT is the product that is being released for ARM processors. These devices are less expensive and typically target the handheld (tablet) market where weight and battery life are really critical. I would describe this product as “Windows 8 Metro” for ARM architectures. Unless you know what processor is in your tablet, it would be hard for the user to know if they were using Windows 8 Metro or Win RT (the functionality would be almost identical). Windows RT will likely NOT be sold to end users but instead installed by the OEM.

I see the Windows RT devices targeting the mass market and specifically provide Microsoft with an iPad competitor. Business users will more likely use Windows 8 Metro mode for their tablets because of the greater flexibility and application support.

Just to make things more complicated, Microsoft is also releasing WinRT (not to be confused with Windows RT). WinRT is an API that sits side-by-side with the .NET framework and the Win32 API. Applications can choose to use either the old Win32 API or the new WinRT but not both. Applications developed for Windows RT and Windows 8 (Metro mode) use the WinRT API. It is this API than enforces the resource consumption constraints pointed out earlier. Rocky Lhotka has published a very nice discussion of WinRT that I would highly recommend.

I hope this helps.

bill



4 Responses to “Windows 8, Metro, and Windows RT”

  1.   Bini Says:

    I’m totally confused. So there are two APIs, Metro and Classic. Are these APIs accessible for developers? That is: has Microsoft exposed the API so I can create Metro apps and Classic apps? I appreciate clarification and/or links to this.

  2.   Burrows Says:

    You are correct — there are two APIs now. The classic .NET Framework (version 4.5) and WinRT. Windows 8 supports both APIs and WindowsRT supports just the new WinRT framework.

    Visual Studio 2012 supports both API and provides templates for both (although you need to be running with Windows 8 to see the WinRT templates.)

    There is a fairly clear explanation at:

    http://www.drdobbs.com/windows/winrt-the-new-runtime-in-windows-8/232200577

    I hope this helps … bill

  3.   sankar Says:

    I cleared from some confusions, thanks a lot.

    Here is the blog about windows 8 and Windows RT and win RT http://ilinksystems.blogspot.in/2012/09/windows-rt-vs-winrt-vs-windows-8.html

  4.   asava samuel Says:

    Here is a database compatible with WinRT:
    https://www.kellermansoftware.com/p-49-ninja-winrt-database.aspx

Leave a Reply