To read all comments associated with this story, please click here.
It looks like people have a short memory. Graphic drivers did not run in kernel mode until Windows NT 4. It was included to boost performance, as graphic was rendered by software. Now graphic is rendered by hardware, so there is no need to run these drivers in kernel mode.
Btw, in Linux, graphic drivers do not run in user modes, as monolithic kernel requires compilation of drivers with the specific kernel.
For clarification, graphics *drivers* have always run in the kernel in Win32 systems: the question is how much of GDI/other GUI stuff has run in kernel space, and what percentage of what's currently being done by a graphics driver in kernel space was done in user space.
BeOS has always had a very sane way of doing this, having a minimal amount of code of a driver in kernel space, and an "accelerant" that's called from the App_Server (the user space program that controls the GUI and does all drawing) that simplifies writing graphics drivers while adding to stability. The more stuff you can remove from kernel space, the better stability and easier it will be to create drivers, and create correct drivers. It may (perhaps) have some amount of performance overhead, but it doesn't appear in BeOS to be a major performance eater.
Now, what will be very interesting is to see how Microsoft changes things with their move of putting more back in user space, when it comes to 3D acceleration performance. But if you think about it, if the 3D rendering is GPU-limited, even this move won't make a significant difference with modern hardware.
> Hopefully MS will get the "Principle
> of Least Authority" approach right in Vista
Yeah.. do you mean "right" like a world-readable /root directory in the default Debian install?
or like the world-readable /home directories by default?
I can't *wait* til they do this!!
AFAIKT their not moving drivers out of the kernel, God I hope not anyway!
The driver package consists of a kernel mode miniport driver and a user mode display driver.
From the WDK:
"The display driver model architecture for Microsoft Windows codename "Longhorn" is composed of user-mode and kernel-mode parts. The following figure shows the architecture required to support the Windows Longhorn display driver model. A graphics hardware vendor must supply the user-mode display driver and the display miniport driver. The user-mode display driver is a dynamic-link library (DLL) that is loaded by the Microsoft Direct3D runtime. The display miniport driver communicates with the Microsoft DirectX graphics kernel subsystem."
http://msdn.microsoft.com/library/default.asp?url=/library/en-us/di...







Member since:
2005-11-05
As much as I despise MS for their predatory business practices, I have to commend them for once in my life.
Even though I use linux on my 7 computers at home, moving the graphics subsystem outside of the kernel is a huge step in the right direction. A year or two ago, I couldn't count the number of times I fixed dell notebooks due to buggy Nvidia drivers.
Hopefully MS will get the "Principle of Least Authority" approach right in Vista also. 'nix has had this for how long now?