Formalising a high-performance microkernel
Authors
NICTA, Sydney, Australia
UNSW, Australia
Abstract
This paper argues that a pragmatic approach is needed for integrating design and formalisation of complex systems. We report on our approach to designing the seL4 operating system microkernel API and its formalisation in Isabelle/HOL. The formalisation consists of the systematic translation of significant parts of the functional programming language Haskell into Isabelle/HOL, including monad-based code. We give an account of the experience, decisions and outcomes in this translation as well as the technical problems we encountered together with our solutions. The longer-term goal is to demonstrate that formalisation and verification of a large, complex, OS-level code base is feasible with current tools and methods and is in the order of magnitude of traditional development cost.
BibTeX Entry
@inproceedings{Elphinstone_KK_06, address = {Seattle, USA}, author = {Kevin Elphinstone and Gerwin Klein and Rafal Kolanski}, booktitle = {Verified Software: Theories, Tools and Experiments}, editor = {Rustan Leino}, month = aug, pages = {1-7}, paperurl = {https://trustworthy.systems/publications/papers/Elphinstone_KK_06.pdf}, series = {Microsoft Research Technical Report MSR-TR-2006-117}, title = {Formalising a High-Performance Microkernel}, year = {2006} }