Certifying checksum-based logging in the RapidFSCQ crash-safe filesystem

S Wang - 2016 - dspace.mit.edu
2016dspace.mit.edu
As more and more software is written every day, so too are bugs. Formal verification is a way
of using mathematical methods to prove that a program has no bugs. However, if formal
verification is to see widespread use, it must be able to compete with unverified software in
performance. Unfortunately, many of the optimizations that we take for granted in unverified
software depend on assumptions that are difficult to verify. One such optimization is data
checksums in logging systems, used to improve I/O efficiency while still ensuring data …
As more and more software is written every day, so too are bugs. Formal verification is a way of using mathematical methods to prove that a program has no bugs. However, if formal verification is to see widespread use, it must be able to compete with unverified software in performance. Unfortunately, many of the optimizations that we take for granted in unverified software depend on assumptions that are difficult to verify. One such optimization is data checksums in logging systems, used to improve I/O efficiency while still ensuring data integrity after a crash. This thesis explores a novel method of modeling the probabilistic guarantees of a hash function. This method is then applied to the logging system underlying RapidFSCQ, a certified crash-safe filesystem, to support formally verified checksums. An evaluation of RapidFSCQ shows that it enables end-to-end verification of application and filesystem crash safety, and that RapidFSCQ's optimizations, including checksumming, achieve I/O performance on par with Linux ext4. Thus, this thesis contributes a formal model of hash function behavior with practical application to certified computer systems.
dspace.mit.edu
以上显示的是最相近的搜索结果。 查看全部搜索结果