Turning to the past to power Windows' future: An in-depth look at WinRT
arstechnica.com
arstechnica.com
In fact it's none of those things - the new environment/UI isn't a new shell running on top of, underneath, or alongside the existing shell. Rather, it's a set of new features added and refactorings made to every layer of the existing system, together with a set of policies designed to create the effect of a fresh new environment by encouraging/enforcing a path through only the "new" parts of each layer.
So, for example, the app permissions / sandbox that new-style apps run in is actually a new general low-level system feature that desktop apps can use too - IE10 desktop uses it for "Enhanced Protected Mode". But this isn't really being publicized or promoted because why would desktop app developers rewrite their code to work with it? Similarly the windows that new-style apps run in aren't being controlled by some separate window manager, they are just regular windows (HWND) in the existing window manager - but that window manager has new features for smoother composition/animation and touch manipulation of windows, and new security features to enforce Z-order rules so apps can't pop up windows on top of new-style apps or steal focus or whatever. Most of the new WinRT APIs aren't available to desktop apps but there is no fundamental purely technical reason they can't be. And so on.
It looks like in many places, dogma and internal turf wars are behind the decisions. Some things however seem quite reasonable, like having one comprehensive API available to both .NET and native applications and scripting languages - but then only Win Store apps can use most of them... sigh
Oh, and no threads for you, and all I/O is dogmatically asynchronous. Ryah (of node.js) would be proud.
More hilarity: "As is this case with most of WinRT, contracts aren't usable in desktop applications. This means that, for example, a desktop e-mail client such as Outlook can't be used as a share target."
So basically Metro apps can only share with Metro apps? So a Metro Outlook can be shared with.
You got a message saying, essentially, "the computer knows what you want to do but refuses to do it for you".
It's borderline insultingly user-hostile.
Some further info on this here for those interested: http://stackoverflow.com/questions/7465517/how-can-a-metro-a...
Not so much. Don't confuse WinRT, an optional helper library, with the system calls you're actually allowed to make inside an app container.
See http://msdn.microsoft.com/en-us/library/windows/desktop/aa36...
WriteFile is available in Windows Store applications. You have to use CreateFile2 to get a HANDLE, but CF2 can still create synchronous IO handles.
All I/O has been asynchronous since Windows NT. Any blocking calls are just the CRT helping you out.
This reads like .NET marketing from years ago.
Also curious to know how a sandboxed Metro environment would be different from a sandboxed virtual machine like .NET. With third party applications being accessible from Windows Store, this makes the whole Windows security topic a concern once again.
The WinRT scope IS to replace in distant future Win32. Sure right now WinRT is basically targeted at tablets running full screen apps, but this might change in the future.
Also WinRT is sharing a symbiotic relationship with "old" Win32. Right now they do sit side by side. Heck explorer.exe is running both "WinRT" (is running in a windows with class ImmersiveBackgroundWindow) as well as the desktop.
Seems caught in between them all.
"I have possibly the nerdiest, longest article I've ever written going up at 1930 Central tonight."
https://twitter.com/DrPizza/status/260154952868057088
So, I'd say the audience is nerds in general. I agree the article doesn't seem to have a definite target audience, but I think — in some sense — that is the beauty of Ars Technica's content. It's accessible enough that non-technical nerds can get value from it, but technical enough that more hardcore nerds appreciate it.
I hope it's deep enough that programmers who haven't been tracking Microsoft's efforts religiously will find it educational, but not so deep that someone who's merely interested in what makes the operating system tick is scared off.
BTW, I fall into the "programmer who hasn't been religiously tracking MS" category.
http://arstechnica.com/features/2012/10/windows-8-and-winrt-...