2015
DOI: 10.1145/2775051.2676975
|View full text |Cite
|
Sign up to set email alerts
|

Deep Specifications and Certified Abstraction Layers

Abstract: Modern computer systems consist of a multitude of abstraction layers (e.g., OS kernels, hypervisors, device drivers, network protocols), each of which defines an interface that hides the implementation details of a particular set of functionality. Client programs built on top of each layer can be understood solely based on the interface, independent of the layer implementation. Despite their obvious importance, abstraction layers have mostly been treated as a system concept; they have almost never been formall… Show more

Help me understand this report

Search citation statements

Order By: Relevance

Paper Sections

Select...
2
1
1
1

Citation Types

0
17
0

Year Published

2017
2017
2023
2023

Publication Types

Select...
5
4

Relationship

2
7

Authors

Journals

citations
Cited by 32 publications
(17 citation statements)
references
References 29 publications
0
17
0
Order By: Relevance
“…Appropriate candidates include separation kernels, hypervisors, real-time operating systems (RTOSes), compilers, file systems, web broswers, sandboxes, cryptographic algorithms and garbage collectors. Perhaps surprisingly, the literature already includes artefacts that have been verified in all of these categories, albeit with somewhat limited functionality: the seL4 microkernel [ 33 ], the mCertiKOS hypervisor [ 35 ], the eChronos and ORIENTIAS RTOSes [ 27 , 36 ], the CompCert C Compiler [ 37 ], the FSCQ and BilbyFS file systems [ 38 , 39 ], the Quark web broswer [ 40 ], the RockSalt browser sandbox [ 41 ], various crytographic algorithms [ 42 , 43 ] and the Nucleus garbage collector [ 44 ]. The existence of two of these artefacts were crucial to DARPA’s decision to fund the HACMS program, serving as a basis of confidence that the program had some chance of succeeding: the seL4 microkernel and the CompCert verifying C compiler.…”
Section: What Software Is Worth Verifying?mentioning
confidence: 99%
See 1 more Smart Citation
“…Appropriate candidates include separation kernels, hypervisors, real-time operating systems (RTOSes), compilers, file systems, web broswers, sandboxes, cryptographic algorithms and garbage collectors. Perhaps surprisingly, the literature already includes artefacts that have been verified in all of these categories, albeit with somewhat limited functionality: the seL4 microkernel [ 33 ], the mCertiKOS hypervisor [ 35 ], the eChronos and ORIENTIAS RTOSes [ 27 , 36 ], the CompCert C Compiler [ 37 ], the FSCQ and BilbyFS file systems [ 38 , 39 ], the Quark web broswer [ 40 ], the RockSalt browser sandbox [ 41 ], various crytographic algorithms [ 42 , 43 ] and the Nucleus garbage collector [ 44 ]. The existence of two of these artefacts were crucial to DARPA’s decision to fund the HACMS program, serving as a basis of confidence that the program had some chance of succeeding: the seL4 microkernel and the CompCert verifying C compiler.…”
Section: What Software Is Worth Verifying?mentioning
confidence: 99%
“… artefact size dev. time performance seL4 [ 33 ] 10K LoC, 480K LoP 13 PY 206 versus 227 cycles CompCert [ 46 ] 42K LoC+P 3 PY 2× speed of 7% slower than 12% slower than FSCQ File System [ 38 ] 24K LoC+P <5 PY 80% of xv6 file system certiKOS Hypervisor [ 35 ] 2K LoC, 18.5K LoP 1 PY <2× slowdown on most benchmarks SHA-256/HMAC [ 43 ] 407 LoC, 14.4K LoP n.a. equivalent to OpenSSL 0.9.1c Rocksalt Sandbox [ 41 ] 100 LoC, 10K LoP <2 PY 1M instructions per second faster than Google’s checker Nucleus GC [ 44 ] 6K LoC+P 0.75 PY ‘competitive’ Quark Web Browser [ 40 ] 5.5K LoC+P 0.5 PY 24% overhead w.r.t.…”
Section: Impedimentsmentioning
confidence: 99%
“…Flint created a new logic programming language known as VeriML Stampoulis ( 2012) with a strong formal description and safety, and studied verification methods of programs and systems in a concurrent environment Wang et al (2019); Gu et al (2018;. Flint used separation logic to verify the accuracy of memory sharing and data abstraction (Koenig and Shao 2018;Gu et al 2015). Meanwhile, virtual timeline was used to specify and reason for preemptive scheduling, and a novel compositional framework is proposed for reasoning Liu et al (2020).…”
Section: Related Workmentioning
confidence: 99%
“…Various techniques for more general compositional compilation in CompCert have been proposed. Notable examples include Compositional CompCert Stewart 2015], CompCertX [Gu et al 2015], CASCompCert [Jiang et al 2019] and CompCertM [Song et al 2020]. All these extensions compile only to CompCert's assembly language.…”
Section: Related Workmentioning
confidence: 99%