In this post, we will understand the difference between microkernel and monolithic kernel −
It is smaller in size.
In this kernel, the services are kept in a separate address space.
It executes slowly in comparison to monolithic kernel.
It can be extended easily.
If a service crashes, it effects the working of the microkernel.
The code to build a microkernel is large.
Examples of microkernel include: QNX, Symbian, L4Linux, Singularity, K42, Integrity, PikeOS, HURD, Minix, Mac OS X, and Coyotos.
In monolithic kernel, both user services and kernel services are kept in the same address space.
Monolithic kernel is larger than microkernel.
It executes quickly in comparison to microkernel.
It is difficult to extend a monolithic kernel.
If a service crashes, the entire system crashes when a monolithic kernel is used.
Less code is required to build a monolithic kernel.
Examples of monolithic kernel include: Linux, BSDs (FreeBSD, OpenBSD, NetBSD), OS-9, AIX, HP-UX, DOS, OpenVMS, XTS-400, Microsoft Windows (95,98,Me), and Solaris.