The University of New South Wales

L4 microkernels: The lessons from 20 years of research and deployment


Gernot Heiser and Kevin Elphinstone



The L4 microkernel has undergone 20 years of use and evolution. It has an active user and developer community, and there are commercial versions that are deployed on a large scale and in safety-critical systems. In this article we examine the lessons learnt in those 20 years about microkernel design and implementation. We revisit the L4 design papers, and examine the evolution of design and implementation from the original L4 to the latest generation of L4 kernels. We specifically look at seL4, which has pushed the L4 model furthest and was the first OS kernel to undergo a complete formal verification of its implementation as well as a sound analysis of worst-case execution times. We demonstrate that while much has changed, the fundamental principles of minimality, generality and high inter-process communication (IPC) performance remain the main drivers of design and implementation decisions.

BibTeX Entry

    month            = apr,
    paperurl         = {},
    journal          = {ACM Transactions on Computer Systems},
    volume           = {34},
    number           = {1},
    author           = {Heiser, Gernot and Elphinstone, Kevin},
    year             = {2016},
    doi              = {10.1145/2893177},
    title            = {L4 Microkernels: The Lessons from 20 Years of Research and Deployment},
    pages            = {1:1-1:29}