Publication | Open Access
Cogent
67
Citations
37
References
2016
Year
Unknown Venue
Program CheckingEngineeringVerificationSoftware EngineeringSoftware AnalysisFormal VerificationRestricted LanguageLinux File SystemsFormal TechniqueFormal SpecificationRuntime VerificationComputer EngineeringComputer ScienceFile System ImplementationSoftware VerificationProgram AnalysisSoftware TestingFormal MethodsSystem Software
We present an approach to writing and formally verifying high-assurance file-system code in a restricted language called Cogent, supported by a certifying compiler that produces C code, high-level specification of Cogent, and translation correctness proofs. The language is strongly typed and guarantees absence of a number of common file system implementation errors. We show how verification effort is drastically reduced for proving higher-level properties of the file system implementation by reasoning about the generated formal specification rather than its low-level C code. We use the framework to write two Linux file systems, and compare their performance with their native C implementations.
| Year | Citations | |
|---|---|---|
Page 1
Page 1