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."
So this is like cell division. The bloat of Windows divides into the Kernel and UI pools.
Taking this article into account, it seems clear why the massive graphics card requirement. However, if this much is being pulled from the Kernel, then why still such a massive minimum RAM?
"if you hold down ctrl+shift+alt and tap the backspace you can watch a video of steve wrecking a chair"
A feeling of having made the same mistake before: Deja Foobar
Who needs the overhead of a windowing GUI on a server?
You know when they market this you'll see it as
New! - Microsoft's Exclusive Patented Technology allows for graphics outside the kernel, to provide higher stability.
New! - Microsoft's Revolutionary Technology allows for graphics outside the kernel, to provide higher stability.
Just wait.... they'll make it sound like a new concept. Rather than a copycat.
its taken them a bit to see they where wrong when they put them in kernel space
but didn't they do this on nt(4 i believe) because it was to slow otherwise?
mind you with the specs needed for a vista machine, whos going to notice......
IT also helps make it less vulnerable to kernel mode malware that could take the system down or steal data.
And it also helps with all the stupid DRM that the MPAA/RIAA wants to force down our throats! Yay, when I wanna watch DVDs on my computer in the future I have to get a new OS, new monitor, new graphics card. Thank you for that innovation!
I enjoy large posteriors and I cannot prevaricate.
So, does this mean that MS's stated goal of "deprecating" OpenGL in favor of DirectX is now irrelevant? If the graphics subsystem is outside the kernel, it can be replaced by another driver that does not make OpenGL play second fiddle to DirectX. Perhaps this is a good thing?
The cesspool just got a check and balance.
You mean copyright infringe data! The data's not going anywhere.
For a site that complains about this whenever it comes up, get it 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.
Does this mean we can customize our own BSOD?
Microsoft programmers found this solution by modifying a secret Vista file called WIN.INI with the following line:
shell=command.com
Then, they added the GUI in another secret Vista file called AUTOEXEC.BAt containing one line:
win.com
Those who fail to understand UNIX are doomed to reimplement it. Poorly
X11 was conceived 20 years ago and was an incredibly forward looking design; both Macintosh and Windows have now moved to an architecture very similar to it.
Unfortunately, technical and historical facts won't stop people from making bogus claims about their pet architecture. There are still lots of Mac zealots going around complaining about X11's supposedly inefficient "network transparent architecture" even though the Mac has pretty much the same architecture and is, if anything, less efficient. I imagine it will be the same with Microsoft zealots, although many of them will, in addition, claim that this architecture was invented by Microsoft.
In other words OpenGl will suck, because DirectX will have direct access to the kernel while OpenGl (and other graphics APIs) will be delayed by inumerous error checks by the interface.
Without an altenate way to access the console what is the value except for server configurations. If X windows or OS X window server locks up I can always ssh in and restart things. On linux I can just use an alternate console. Would be great if OS X had something similar. If Vista doesn't have something similar than a graphics system lock up is almost the same as a BSOD. Maybe you will still be able to do a controlled shutdown through the power button.
Yeah well, where the drivers reside aside, is the OS still based on the assumption it's a GUI? Specifically, do we still have the idiotic and juvenile system architecture that specifies window parameters to low-level system calls? Like say, CreateProcess taking window parameters?
Or have they actually revamped the kernel no longer requires or assumes a GUI at all? Have they finally caught up to 1970?
Don't think of it as a flame---it's more like an argument that does 3d6 fire damage
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
In Windows 3.5, the graphics subsystem was outside of the kernal, then they moved it in for 4.0, and now, they are undoing that.
This is my sig.
You seem to be confused. Yes there is still a kernel thing that talks to the hardware. Even in non-kernel X there is something in the Linux kernel that grants this process access to certain hardware. However you have to realize that this thing is TINY compared to a graphics server. Likely the difference in size is three or four orders of magnitude. Assumming bugs are evenly spread (which is probably false, there are probably fewer bugs than that in the hardware-talking layer), what NT (and X) has done is move 99.99% of the bugs out of the kernel!
I don't understand what makes a copycat these days. How is something basics like running graphics in usermode something where people can be called "copycats" for doing? You can run it in kernelmode or usermode, it's not like switching it from one to the other is an incredible innovation and people would never come to on their own. Clearly they looked at X11 and thought "what a magnificient technology! Let us copy its architecture..." or not...
/., but come on guys...
There are design tradeoffs made in doing operating system design. Back when NT4.0 came out, Microsoft decided that the performance of the kernel-mode graphics system was superior to that of the user-mode graphics system. Now that the hardware is so much faster, there's virtually no difference in performance...so now they're moving it back into userland.
I realize this is
Repeat after me, the GDI is not part of the kernel, it simply runs in kernel space (AKA higher privledge). Unlike, linux where everything in kernel space is basically compiled against the kernel headers and is bound to a kernel version, NT has both user and kernel mode API's. To say the graphics system is hard wired to the kernel is like saying my hello-world program is part of libc. Moving it back to userspace should be about as hard as it was back in the NT 3.51 timeframe to move it into kernel space.
In 2013 they'll put the graphics driver back in... and shake it all about.
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
But the vast majority of driver code lives in userspace; the size of the kernel interface is much smaller and therefore easier to debug.
Any bugs that exist in the kernel mode driver would yield the same problems in user mode. If a video driver incorrectly configures your graphics card, you're going to get a garbled display, period.
I don't think we're too worried about garbled displays here. If you have a kernel mode driver, it can do whatever the hell it likes with the entire kernel address space. Even if it isn't malicious, a badly written kernel driver can cause all sorts of corruption all over the place.
Don't you hate meta-sigs?
As far as gaming cheaters are concerned, it means almost nothing. The system hooks are still present and useable. The only thing that would stop cheaters are games that stop trusting the clients.
It seems they have fixed almost everything that was wrong with windows. I mean:
And people complain that there is nothing new in Vista, phew... I mean if they manage to do all those things, and do them the right way like they seem to be decided to (for once...) it will be damn worth a new release...
And no, i'm not a microsoft fanboy, i've been using Linux since 97 and I really like it where it shines. But if you have even a little objectivity you can't say the stuff they're putting here is not interesting...
I didn't say window handle parameter, i said window parameters:
Even if this is "just kept" by the kernel, it's still a non-abstracted design. The kernel "knows about" the GUI. It shouldn't. If someone wants window information about a process, it should ask the GUI, not the kernel.
Don't think of it as a flame---it's more like an argument that does 3d6 fire damage
"... 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."
Now if Microsoft could just find a way to separate the internet browser from the OS...
** cough, choke, gag...**
The race isn't always to the swift... but that's the way to bet!
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
Microsoft has decided to rename this new, kernel-distant graphics interface "X". Fringe groups note that this name is already taken, but Microsoft is in talks to buy said fringe groups.
stuff |
In broader terms, this makes Windows far more like Linux and Unix - and even the MacOS -
or DOS and windows 3.1.
*ducks*
You are checking your backups, aren't you?
If the GUI is no longer part of the kernel, can I now get a Vista Server without the GUI? Just barebones Vista with the new command line shell?
If you mod me down, I *will* introduce you to my sister!
It seems to me that moving graphical operations to userland would make them more hackable rather than more secure. One userland app could more easily preempt another userland app, and something kernel-loaded could be used to trick a userland app into ignoring copy protection.
Also, I believe that a userland application might be a little easier to decipher, and you wouldn't need to know as much about the hidden tricks that the windows kernel might be using (or you could intercept the various calls).
Wow, you're behind the times. MS pioneered the scroll wheel back in 1996, almost 10 years ago.
If you don't know where you are going, you will wind up somewhere else.
because of the huge games market for NT 3.51?
O_o
+++ATH0
You can do most of it with perl if you know enough about the registry. Perl is able to not only change anything in the registry (visible or no) but it can also handle user management on local machines or on domains and a bunch of other fun NT-related stuff. With that said, why would you want to? Unless you're doing batch operations (which is mostly what I've used perl for on NT, besides mangling ASCII) the GUI is probably faster and certainly easier.
"You're right," Fisheye says. "I should have set it on 'whip' or 'chop.'"
Yeah, running graphics drivers in kernel space is just plain ugly... Luckily for us Linux users, we can get full graphics acceleration by running the "userspace" NVIDIA kernel module
size
text data bss dec hex filename
2476901 947920 6916 3431737 345d39
To take that further, Windows XP can run quite nicely on P2 233s. I worked in an office full of Digital comps with P2 233s and 128megs of PC100 ram. They ran Windows XP (mostly using Office XP) quite admirably. The slowest computer I've personally used WinXP on is a Pentium Pro 233. That did not run very well at all, but it also only had 64 megs of ram.
1 (short ton / firkin) = 89.1432354 slugs / keg
is because enough high level graphics functionality is moving into and being required of the graphics hardware now that the performance loss on most machines will be acceptable. i.e. it is heavily tied to the hardware requirements Vista has added. If they couldn't do it without losing significant performance, they wouldn't. Performance sells before stability.
How many cycles the gui eats up is not the "big deal"
The big deal is eliminating a potential source of crashes. Right now, a video driver bug can (and often does) bring down the entire system. By putting the gui in a user process you can (in theory) avoid all that. What's more, you get that addes stability Whether you decide to use the gui or not