Question
Q: Compare and contrast the L4 microkernel with Nucleus and Hydra in terms of their goals to provide a basis on which higher-level OS functionality can be implemented.
Background
u-kernels or micro kernels - kernels that provide only address spaces, threads and IPCs or an equivalent set of primitives.
- Previous work theorize that the lack of hardware implementations force increased software abstractions on top of u-kernels leading to lower performance
L4 u-kernel
Based on two basic concepts:
- Threads - execution inside an address space
- Address space
- L4 supports “recursive construction” of address spaces
- In other words, an owner of an address space can grant a subset of its pages to another address space as long as the recipient agrees Pagers -
- L4 supports “recursive construction” of address spaces