To view parent comment, click here.
To read all comments associated with this story, please click here.
It doesn't at the moment (and NT has traditionally lumped all and sundry into its kernel), but Vista apparently will change things. It's a hotch potch. As a whole, the thing isn't a microkernel. You can't just yank some stuff out of the kernel, put it into userspace and call it a microkernel.
I didn't. You said the NT kernel is monolithic-- utter nonsense as NT is a hybrid. It is a hybrid in XP, and it will be a hybrid in Vista.
utter nonsense as NT is a hybrid. It is a hybrid in XP, and it will be a hybrid in Vista.
Microsoft has some pretty pictures at http://www.microsoft.com/technet/archive/ntwrkstn/reskit/archi.mspx... that label some parts of the NT kernel "microkernel", and even appear to show device drivers moving into user land.
The problem with the picture is I could easily draw a similar picture for just about any monolithic operating system, at that level of (lack of) detail.
"Hybrid" microkernel is an oxymoron. Either the 'microkernel' is in a separate protection domain than the rest of the code that runs in supervisor mode, or it's not a microkernel.
And on Intel hardware, if it is in a separate protection domain, then context switch overhead will do a fine job of consuming your cpu and heating your house.
I didn't. You said the NT kernel is monolithic-- utter nonsense as NT is a hybrid.
It is not a microkernel, or even a hybrid. At its heart it is still a monolithic kernel. Vista will exhibit some microkernel aspects with audio drivers amongst other things being pulled into userspace. That's only because it's flavour of the month though. I daresay you can do the same with Linux, and people have even done so. Just because someone has bunged an out-of-kernel driver on, does that make Linux a microkernel, or even a hybrid?
You could tentatively call Windows a hybrid (it just doesn't have anywhere near enough microkernel aspects about it) but it doesn't make any difference. At its heart it is still monolithic. NT definitely is monolithic in every sense. As I stated, you can't just yank stuff out of the kernel, bung it into userspace and call it a microkernel or even a hybrid. You can't be a little bit pregnant.
You're just trying to come up with the existence of a hybrid to try and give the impression that microkernels are actually happening. What Microsoft is doing with Vista does not make it a microkernel in any sense.
Edited 2006-05-08 10:27






Member since:
2005-07-06
The same applies to the NT kernel: it is a hybrid because it has certain parts literally in the kernel, but other parts simply in kernelspace.
It doesn't at the moment (and NT has traditionally lumped all and sundry into its kernel), but Vista apparently will change things. It's a hotch potch. As a whole, the thing isn't a microkernel. You can't just yank some stuff out of the kernel, put it into userspace and call it a microkernel.