What is difference between monolithic and micro kernel?

Renjith G picture Renjith G · Dec 27, 2010 · Viewed 189.6k times · Source

Could anyone please explain with examples difference between monolithic and micro kernel? Also other classifications of the kernel?

Answer

sariful islam picture sariful islam · Mar 4, 2011

Monolithic kernel is a single large process running entirely in a single address space. It is a single static binary file. All kernel services exist and execute in the kernel address space. The kernel can invoke functions directly. Examples of monolithic kernel based OSs: Unix, Linux.

In microkernels, the kernel is broken down into separate processes, known as servers. Some of the servers run in kernel space and some run in user-space. All servers are kept separate and run in different address spaces. Servers invoke "services" from each other by sending messages via IPC (Interprocess Communication). This separation has the advantage that if one server fails, other servers can still work efficiently. Examples of microkernel based OSs: Mac OS X and Windows NT.