A microkernel performs only the most basic functions that apply to all computers. A benefit is that it's much simpler to extend the operating system.
Microkernel I Smaller Than A Nanokernel
by message passing
The microkernel was designed to address the increasing growth of kernels and the difficulties that came with them. In theory, the microkernel design allows for easier management of code due to its division into user space services. This also allows for increased security and stability resulting from the reduced amount of code running in kernel mode. For example, if a networking service crashed due to buffer overflow, only the networking service's memory would be corrupted, leaving the rest of the system still functional.
roubustness scalability security flexibility extensibility portability interactivity
Prex OS is an open source portable real-time operating system for embedded systems. Prex is designed specifically for tiny, resource-constrained platforms. It is written in ANSI C based on traditional microkernel architecture. Prex is royalty-free software released under BSD License.
Microkernel I Smaller Than A Nanokernel
Because the communication between different parts of the system is more complex in a microkernel.
mach
None. Solaris has a monolithic kernel.
No version of Windows currently uses a microkernel
by message passing
by message passing
The main advantages are that new services do not need to modify the kernel and it's easier to port between hardware. Also, microkernels provide more security because of less time in privileged mode.
suffer from performance decreases due to increased system function overhead. Consider the history of Windows NT. The first release had a layered microkernel organization. However, this version delivered low performance compared with that of Windows 95. Windows NT 4.0 partially redressed the performance problem by moving layers from user space to kernel space and integrating them more closely. By the time Windows XP was designed, its architecture was more monolithic than microkernel.
The microkernel was designed to address the increasing growth of kernels and the difficulties that came with them. In theory, the microkernel design allows for easier management of code due to its division into user space services. This also allows for increased security and stability resulting from the reduced amount of code running in kernel mode. For example, if a networking service crashed due to buffer overflow, only the networking service's memory would be corrupted, leaving the rest of the system still functional.
It isn't. RTLinux is a separate microkernel that runs Linux as a process. The Linux kernel is essentially unmodified.
In computer science, a microkernel is the near-minimum amount of software that can provide the mechanisms needed to implement an operating system (OS).