Publication | Open Access
Hyperkernel
75
Citations
50
References
2017
Year
Unknown Venue
EngineeringVerificationComputer ArchitectureComputer-aided VerificationFormal VerificationSoftware AnalysisOs KernelMechanical VerificationFormal TechniqueRuntime VerificationComputer EngineeringComputer ScienceFunctional CorrectnessSoftware VerificationOperating SystemsProgram AnalysisFormal MethodsSystem SoftwareKernel Interface
This paper describes an approach to designing, implementing, and formally verifying the functional correctness of an OS kernel, named Hyperkernel, with a high degree of proof automation and low proof burden. We base the design of Hyperkernel's interface on xv6, a Unix-like teaching operating system. Hyperkernel introduces three key ideas to achieve proof automation: it finitizes the kernel interface to avoid unbounded loops or recursion; it separates kernel and user address spaces to simplify reasoning about virtual memory; and it performs verification at the LLVM intermediate representation level to avoid modeling complicated C semantics.
| Year | Citations | |
|---|---|---|
Page 1
Page 1