2015
DOI: 10.1007/978-3-319-19458-5_2
|View full text |Cite
|
Sign up to set email alerts
|

A Case Study on Formal Verification of the Anaxagoros Hypervisor Paging System with Frama-C

Abstract: Abstract. Cloud hypervisors are critical software whose formal verification can increase our confidence in the reliability and security of the cloud. This work presents a case study on formal verification of the virtual memory system of the cloud hypervisor Anaxagoros, a microkernel designed for resource isolation and protection. The code under verification is specified and proven in the Frama-C software verification framework, mostly using automatic theorem proving. The remaining properties are interactively … Show more

Help me understand this report

Search citation statements

Order By: Relevance

Paper Sections

Select...
4
1

Citation Types

0
12
0

Year Published

2017
2017
2024
2024

Publication Types

Select...
5
1
1

Relationship

1
6

Authors

Journals

citations
Cited by 18 publications
(13 citation statements)
references
References 21 publications
(23 reference statements)
0
12
0
Order By: Relevance
“…It supports many approaches to verificationÐthe most related one is the łWPž deductive verification module, which lets programmers annotate a C program with pre-and postconditions written in a specification language called ACSL, which then generate goals for either an automatic or interactive theorem prover. It has been applied to verify parts of hypervisors/microkernels [Blanchard et al 2015[Blanchard et al , 2018Mangano et al 2016]. The emphasis of ACSL is on logic formulas: it includes first-and higher-order quantifiers, separation-logic connectives, inductive definitions, built-in sets and lists, and recursive definitions.…”
Section: Related Workmentioning
confidence: 99%
“…It supports many approaches to verificationÐthe most related one is the łWPž deductive verification module, which lets programmers annotate a C program with pre-and postconditions written in a specification language called ACSL, which then generate goals for either an automatic or interactive theorem prover. It has been applied to verify parts of hypervisors/microkernels [Blanchard et al 2015[Blanchard et al , 2018Mangano et al 2016]. The emphasis of ACSL is on logic formulas: it includes first-and higher-order quantifiers, separation-logic connectives, inductive definitions, built-in sets and lists, and recursive definitions.…”
Section: Related Workmentioning
confidence: 99%
“…There are many formalizations of memory models in the literature, e.g., [10,14,15,19,21], where some of them only create an abstract specification of the services for memory allocation and release [10,15,21]. 2Formal verification of OS memory management has been studied in CertiKOS [11,20], seL4 [12,13], Verisoft [3], and in the hypervisors from [4,5], where only the works in [4,11] consider concurrency. Comparing to buddy memory allocation, the data structures and algorithms verified in [11] are relatively simpler, without block split/coalescence and multiple levels of free lists and bitmaps.…”
Section: Introductionmentioning
confidence: 99%
“…Comparing to buddy memory allocation, the data structures and algorithms verified in [11] are relatively simpler, without block split/coalescence and multiple levels of free lists and bitmaps. [4] only considers virtual mapping but not allocation or deallocation of memory areas.…”
Section: Introductionmentioning
confidence: 99%
“…Hypervisors implement nontrivial algorithms, and formally verifying them is an active research field ( [18], [20], [19], to name but a few -an exhaustive list of references can be found in [21]). We only verify our hypervisor's algorithm, not its implementation; the counterpart is that our verification effort is comparatively much smaller.…”
Section: Introductionmentioning
confidence: 99%