Monolithic kernel
An OS kernel that is entirely self contained and does not call in additional drivers or modules as needed. See kernel.
Download Computer Desktop Encyclopedia to your PC, iPhone or Android.
A monolithic kernel is an operating system architecture where the entire operating system is working in the kernel space and alone as supervisor mode. The monolithic differs from other operating system architectures[1][2] in that it defines alone a high-level virtual interface over computer hardware, with a set of primitives or system calls to implement all operating system services such as process management, concurrency, and memory management itself and one or more device drivers as modules.
Loadable modules
Modular operating systems such as OS-9 and most modern monolithic operating systems such as OpenVMS, Linux, BSD (and its flavors FreeBSD, NetBSD, OpenBSD), and UNIX variants such as SunOS, and AIX, in addition to MULTICS, can dynamically load (and unload) executable modules at runtime. This modularity of the operating system is at the binary (image) level and not at the architecture level. Modular monolithic operating systems are not to be confused with the architectural level of modularity inherent in Server-Client operating systems (and its derivatives sometimes marketed as hybrid kernel) which use microkernels and servers (not to be mistaken to modules or daemons). Practically speaking, dynamically loading modules is simply a more flexible way of handling the operating system image at runtime — as opposed to rebooting with a different operating system image. The modules allow easy extension of the operating systems's capabilities as required. Dynamically loadable modules incur a small overhead when compared to building the module into the operating system image. However, in some cases, loading modules dynamically (as-needed) helps to keep the amount of code running in kernel space to a minimum; for example, to minimize operating system footprint for embedded devices or with limited hardware resources. Namely, an unloaded module need not to be stored in the scarce random access memory.
Monolithic architecture examples
- Unix kernels
- Unix-like kernels
- DOS
- DR-DOS
- MS-DOS
- Microsoft Windows 9x series (95, 98, Windows 98SE, Me)
- OpenVMS
- XTS-400
References
- ^ "Modular system programming in Minix3". http://www.usenix.org/publications/login/2006-04/openpdfs/herder.pdf.
- ^ "Server-Client, or layered structure". The Design of PARAS Microkernel. http://www.gridbus.org/~raj/microkernel/chap2.pdf. Retrieved 15 July 2009.
See also
v · d · eOperating system | |||||||||||
---|---|---|---|---|---|---|---|---|---|---|---|
General |
History · Timeline · List · Comparison · Usage share · Development · Advocacy |
||||||||||
Kernel |
|
||||||||||
Process management |
|
||||||||||
Memory management | |||||||||||
Examples | |||||||||||
Miscellaneous concepts |
Boot loader · PXE · API · Virtual file system · Virtual tape library · Computer network · CLI · TUI · GUI · VUI · HAL |
This entry is from Wikipedia, the leading user-contributed encyclopedia. It may not have been reviewed by professional editors (see full disclaimer)
Related topics:
Related answers:
Help us answer these:
Post a question - any question - to the WikiAnswers community: