Lesson 133

Advanced Operating Systems

Microkernels · unikernels · eBPF · kernel design

1:00

How kernel architecture choices — monolithic, microkernel, exokernel, unikernel, eBPF — answer the question of where OS code should live and how much to trust it.

By the end, you can

  • Explain the privilege boundary and why the kernel is the Trusted Computing Base.
  • Compare monolithic and microkernel designs: what lives where, the cost of IPC, and the reliability trade-off.
  • Describe the exokernel philosophy and how a library OS gives apps control over OS policy.
  • Explain what a unikernel is, its benefits (tiny image, fast boot, small attack surface), and its limitations.
  • Trace the eBPF pipeline: write → verify → attach, and state the two guarantees the verifier checks.
  • Contrast VM and container isolation and articulate why containers have a weaker boundary.
  • Place all designs on the single axis the lesson names: where should the code live, and how much do we trust it? — ranging from monolithic kernels (all services in privileged kernel space) to microkernels (a minimal trusted core with services pushed into user space).
Up next in Software Engineering & Web
Questions or feedback?