Vista's Graphics To Be Moved Out of the Kernel
Tiberius_Fel writes "TechWorld is running an article saying that Vista's graphics will not be in the kernel. The goal is obviously to improve reliability, alongside the plan to make most drivers run in user mode." From the article: "The shift of the UI into user mode also helps to make the UI hardware independent - and has already allowed Microsoft to release beta code of the UI to provide developers with early experience. IT also helps make it less vulnerable to kernel mode malware that could take the system down or steal data. In broader terms, this makes Windows far more like Linux and Unix - and even the MacOS - where the graphics subsystem is a separate component, rather than being hard-wired into the OS kernel."
Graphics were not in the kernel in NT 3.51. NT 4.0 added graphics to the kernel which added instability.
A fine is a tax you pay for doing wrong and a tax is a fine you pay for doing all right.
the biggest mistake MS made was to listen to the marketing droids
:) but if it was a Terminal Server - WHO CARED! keep it running!
(Windows 95 ist faster! Nein!) and to move the video drivers into
kernelspace in NT 4.0.
to do that, they had to rip out the entire terminal server subsystem,
to the extent that in order to fix it for NT 4.0 and NT 5.0 (aka Windows 2000) they had to _buy_ a company that had managed to do it (Citrix, i think it was - someone correct me, here).
NT 3.5 and 3.51, the screen driver, being userspace, could crash - and leave the machine, as a server, completely unaffected. If you _did_ need to use the screen, as long as you knew what keys to press, or where to move the mouse....
Now - surprise, surprise, hardware is fast enough, memory is cheap enough, the [stupid] decision has been revisited.
It's funny. Microsoft already did this with printer drivers. Windows NT 3.51 lived in userspace. In Windows NT 4 they moved into the kernel. In 2000, they moved back into userspace, but with a completely different architecture from 3.51. Windows Server 2003 still supports the NT4 model of kernel mode printer graphics drivers but that might change with Vista.
-mkb
Wrapping OpenGL does suck, but they are also wrapping Direct3D 9 and lower. So it's more than just Carmack's games that won't run at top speed :(
I havn't seen any clear stance on if they will allow hardware vendors to implement their own ICDs for fullscreen mode, but the current LDDM beta drivers from nVidia do not have OpenGL in them.
Yeah.. too bad the X Window System used in *nix has been around since 1984.
"Those who don't understand UNIX are doomed to reinvent it, poorly."
-- Henry Spencer
I don't know about the printer drivers, but for the video, they claimed moving to kernel space made them faster (and did seem to), unfortunately it introduced an unenforced requirement that video drivers be fully debugged, which due to the nature of the business they never were. A once rock stable machine on 3.51 that could not be made stable on 4.00 without switching from ATI to Nvidia video cards is what first gave me doubts about whether I wanted to continue running Windows at home (or ATI video cards for that matter).
The speed boost just wasn't worth it, in the same way that the functionality of run-on-load macros in Word documents aren't worth the trouble they cause. Maybe this is a sign that the true tech types are gaining influence over the marketing types at the company (but somehow I doubt that). For the sake of those still running Windows I hope they take all non-essentials out of kernel space and shoot for stability over speed or features.
In the current versions, I don't believe so, but there are alot of complex tasks that an admin might do very rarely (ie not common enough to write a script), that just flow better using the GUI tools.
I also highly doubt that the GUI is wasting any significant amount of resources sitting at the login screen (you are practicing physical security, no logged in users unless they are currently working on the machine).
That being said, I can't think of the last time that I used the local console for anything other then network settings. I do most of my work via TS.
Microsoft has already responded to this article by saying that nothing has changed: http://www.microsoft-watch.com/article2/0,2180,190 2540,00.asp
Wrappers for other graphics protocols have been around for a long time. You can still get Glide Wrappers for games that specifically require a 3Dfx Interactive Voodoo graphics card. Most of the newest wrappers work great. eVoodoo for instance is one of the best.
What wrappers do, in "Windows", is take the function calls ment for Glide (or whatever graphics subsystem the program needs) and translates them into function calls that DirectX can understand. I've heard of Glide wrappers for Linux that translates into OpenGL.
Anyway, DirectX in Vista will have something like a wrapper for OpenGL since there will not be any actual OpenGL drivers in the OS. This could be good or bad but the move does make sense. Instead of having two separate graphics subsystems in Vista they are narrowing it down to just one and keeping the ability to use programs that requires OpenGL. Most game developers have left OpenGL far behind anyway including Id Software a company that used OpenGL almost exclusively for years until Doom 3 and Quake 4 arrived which use DirectX. It wouldn't be too hard to add in OpenGL Optimization into the wrapper code so programs that use OpenGL won't suffer a performance hit. I cna also understand why Vista will need high graphics and memory requirements. The whole reason why the GUI was put into the kernel for NT 4.0 was for improved speed, but at the loss of stability. Taking it out again will improve stability, something that Windows needs badly. Todays faster CPUs and graphics card GPUs shouldn't really have a problem with Vista. Builtin video on motherboards usually aren't that good, but this move might convince manufaturers to start offering builtin video that is much better quality or switch to using standard video cards instead which is what they should have been doing in the first place.
Michael "TheZorch" Haney
thezorch@gmail.com
http://thezorch.googlepages.com/home
SCO didn't purchase Unix rights until 1995, and Windows NT 3.1 was released in 1993. Plus, I've never heard of any agreement that would have prevented Windows NT from being a fully compliant Unix. They even built it with swappable OS subsystems so they could go that route if the market demanded it. There was even a third party vendor that sold a really good Unix subsystem several years ago, but the name escapes me.
As for advanced features, I think the GP is referring to things like the swappable OS subsystems; a hybrid micro-kernel; a strong and flexible access control model; a highly portable hardware abstraction layer supporting three widely different architectures; and an extremely versatile file-system. This was all really groundbreaking in the early 1990's and a lot of it is still very impressive from a design and engineering perspective. Plus this is back when MS was the versatile upstart that was challenging the clunky proprietary Unixes of its day. MS was much friendlier back in those days too, as they were doing a lot more embracing and a lot less extending.
The tragedy of Windows NT is that MS became too dominant and its direction changed. As a result many of the kernel's greatest features were never really visible through the layers of crap piled on top. The Win32 subsystem eliminated the competition and brought us abominations like pseudo-handles and a truly evil GDI. The hybrid micro-kernel became suspiciously monolithic as it absorbed the GDI, Win32 subsystem, and anything else in the name of performance. The exceptional access control model was all but ignored by the majority of software developers, with even enterprise developers doing a poor job of supporting secure multi-user access. The hardware abstraction layer slowly evaporated as support dwindled to only x86. The advanced functionality of the file-system was never utilized much, in order to maintain parity the bastard family line known as Win9x. And so the operating system crystallized to what it is today.
So I'm glad to see that Windows NT is finally headed back to its roots and picking up some old initiatives. Vista will finally push secure multi-user access (LUA) and kick the GDI's ass out of the kernel. I was very unimpressed by MS a few years ago, and I'm always extremely suspicious of them. But it really looks like they're headed in the right direction with respect to security and stability, and I don't think anyone should begrudge them that. That stated, I'm also very happy that we now have viable and, in some scenarios, superior and more affordable alternatives to the Windows platform. As far as I'm concerned the consumer's options are just continuing to get better.