2025-08-27

Exokernel

Paper: Exokernel: an operating system architecture for application-level resource management [pdf][acm.org]

It is an approach to operating system that allows applications to directly manage the hardware resource as much as possible. So, it leaves traditional OS duties to the application and only facilitates multiplexing resources and checking ownership/capabilities (i.e. security). Applications with (or without) the help OS libraries that live in the user space, do

This offers tons of flexibility to the application and reduces the kernel code. Aegis is a kernel, and ExOS is an Operation System library collection that follows the design principles of Exokernel.

Conventional OS give only high-level core abstraction to application, Exokernel gives low level interface to machine resources. With high level abstraction, the OS is forced to make tradeoffs. But with exokernel, the application gets to decide how to best use the hardware resources that fits it purpose. As an example, think of database systems and how they can manage page faults, file caching and such to best fit the need of database.

Responsibility of Exokernel:

Design principles:

Multiplexing:

Revokation:

Aegis (An Exokernel implementation) features:

ExOS (An OS built upon Aegis) features:


You can send your feedback, queries here