26.5. Exokernels and vertical structuring

Previous sections have introduced three mechanisms for extending or customizing operating system functions. The first operated purely at compile time allowing a more streamlined system to be built for a particular environment. The second, leading to microkernel designs, operated at runtime allowing new implementations to be supplied for interfaces exposed by the OS kernel. These implementations could either operate within privileged code (in the example of kernel loadable modules) or in unprivileged user-space applications (in a microkernel system). The third scheme, downloadable code, also allowed new implementations to be provided but these were not executed directly but rather compiled from a safe ...

Get Operating Systems: Concurrent and Distributed Software Design now with the O’Reilly learning platform.

O’Reilly members experience books, live events, courses curated by job role, and more from O’Reilly and nearly 200 top publishers.