Logo Questions Linux Laravel Mysql Ubuntu Git Menu
 

Why did Windows NT move away from the microkernel? [closed]

I'm told, that Windows NT was first designed to implement the microkernel architecture, but moved away to hybrid kernel.

What caused the change? I'm having trouble trying to find any info about this.

like image 621
Arek Krawczyk Avatar asked Oct 14 '13 16:10

Arek Krawczyk


Video Answer


1 Answers

The main reason that Windows NT became a hybrid kernel is speed. A microkernel-based system puts only the bare minimum system components in the kernel and runs the rest of them as user mode processes, known as servers. A form of inter-process communication (IPC), usually message passing, is used for communication between servers and the kernel.

Microkernel-based systems are more stable than others; if a server crashes, it can be restarted without affecting the entire system, which couldn't be done if every system component was part of the kernel. However, because of the overhead incurred by IPC and context-switching, microkernels are slower than traditional kernels. Due to the performance costs of a microkernel, Microsoft decided to keep the structure of a microkernel, but run the system components in kernel space. Starting in Windows Vista, some drivers are also run in user mode.

like image 173
Marionumber1 Avatar answered Nov 24 '22 04:11

Marionumber1