Title
seL4: formal verification of an operating-system kernel
Abstract
We report on the formal, machine-checked verication of the seL4 microkernel from an abstract specication down to its C implementation. We assume correctness of compiler, assembly code, hardware, and boot code. seL4 is a third-generation microkernel of L4 provenance, comprising 8,700 lines of C and 600 lines of assembler. Its performance is comparable to other high-performance L4 kernels. We prove that the implementation always strictly follows our high-level abstract specication of kernel behaviour. This encompasses traditional design and implementation safety properties such as that the kernel will never crash, and it will never perform an unsafe operation. It also implies much more: we can predict precisely how the kernel will behave in every possible situation.
Year
DOI
Venue
2010
10.1145/1743546.1743574
Commun. ACM
Keywords
Field
DocType
operating-system kernel,formal verification,operating system
Kernel (linear algebra),Programming language,Computer science,Abstract interpretation,Correctness,Microkernel,Compiler,Assembly language,Kernel preemption,Operating system,Formal verification
Journal
Volume
Issue
ISSN
53
6
0001-0782
Citations 
PageRank 
References 
84
5.86
7
Authors
13
Name
Order
Citations
PageRank
Gerwin Klein1145087.47
June Andronick290342.66
K. Elphinstone3119065.76
Gernot Heiser42525137.42
David Cock582737.44
Philip Derrin672631.12
Dhammika Elkaduwe768929.13
Kai Engelhardt876235.62
Rafal Kolanski980234.23
Michael Norrish10109161.77
Thomas Sewell1191437.60
Harvey Tuch1279135.74
Simon Winwood1371330.07