Definition
Process-Based Kernel
A process-based kernel is an OS architecture where major kernel functions are implemented as separate modular system processes. Core OS services compete for CPU time and are managed by minimal non-process basic services. Only fundamental services (dispatcher, low-level interrupt handling, IPC) remain outside the process abstraction.
Mechanism
System Processes
Services like file management, network protocols, and device drivers run as high-privilege processes.
Uniformity
OS uses same scheduling logic and data structures (e.g., process table) for both user and system processes.
Communication
Processes request services by sending messages to corresponding system processes.
Properties
Modularity
Services can be added, removed, or updated without rebooting the kernel.
Flexibility
Ideally suited for distributed systems where system processes can reside on different machines.
Robustness
Failure in a system process does not necessarily crash the entire OS.
Performance
Can be slower than monolithic designs due to message passing and process switch overhead.
Analogy
Corporate Office
- User Processes: Clients requesting services
- System Processes: Specialised departments (Accounting, IT, HR)
- Dispatcher: Office manager scheduling shared boardroom (CPU) access
Clients send requests to departments; everyone follows the same building rules (basic kernel services).