Architectural Patterns and kernels
Monolithic architecture - Exposes a high level interface where with core services closely coupled with each other. Linux and other monolithic kernels provide a high level system call API and internally, services like memory management, I/O etc are tightly coupled.
Pro: Performance
Con: Defect on one service may affect other services
Microkernel architecture - Services decoupled and run on own process. Use message passing mechanism to communicate with each other to reduce coupling.
Pro: Easy to extend or add new features. Malfunctioning service can be restarted without affecting others
Con: Slower
Hybrid kernels - Micro kernels that have non-essential code in kernel space for efficiency. Microsoft Windows NT and strains are an example
Exokernels - Provides a library for core OS features (in terms of the developer requesting particular pages of memory or blocks of diskspace). Application developer builds on top. Multiple libraries can co-exist allowing applications designed for different libraries to run side by side.
Monolithic architecture - Exposes a high level interface where with core services closely coupled with each other. Linux and other monolithic kernels provide a high level system call API and internally, services like memory management, I/O etc are tightly coupled.
Pro: Performance
Con: Defect on one service may affect other services
Microkernel architecture - Services decoupled and run on own process. Use message passing mechanism to communicate with each other to reduce coupling.
Pro: Easy to extend or add new features. Malfunctioning service can be restarted without affecting others
Con: Slower
Hybrid kernels - Micro kernels that have non-essential code in kernel space for efficiency. Microsoft Windows NT and strains are an example
Exokernels - Provides a library for core OS features (in terms of the developer requesting particular pages of memory or blocks of diskspace). Application developer builds on top. Multiple libraries can co-exist allowing applications designed for different libraries to run side by side.
Comments