Show simple item record

dc.contributor.authorChajed, Tej
dc.contributor.authorChen, Haogang
dc.contributor.authorChlipala, Adam
dc.contributor.authorKaashoek, M. Frans
dc.contributor.authorZeldovich, Nickolai
dc.contributor.authorZiegler, Daniel Todd
dc.date.accessioned2019-10-18T13:28:41Z
dc.date.available2019-10-18T13:28:41Z
dc.date.issued2017-04
dc.identifier.issn0001-0782
dc.identifier.urihttps://hdl.handle.net/1721.1/122622
dc.description.abstractFSCQ is the frst fle system with a machine-checkable proof that its implementation meets a specifcation, even in the presence of fail-stop crashes. FSCQ provably avoids bugs that have plagued previous fle systems, such as performing disk writes without suffcient barriers or forgetting to zero out directory blocks. If a crash happens at an inopportune time, these bugs can lead to data loss. FSCQ's theorems prove that, under any sequence of crashes followed by reboots, FSCQ will recover its state correctly without losing data. To state FSCQ's theorems, this paper introduces the Crash Hoare logic (CHL), which extends traditional Hoare logic with a crash condition, a recovery procedure, and logical address spaces for specifying disk states at different abstraction levels. CHL also reduces the proof effort for developers through proof automation. Using CHL, we developed, specifed, and proved the correctness of the FSCQ fle system. Although FSCQ's design is relatively simple, experiments with FSCQ as a user-level fle system show that it is suffcient to run Unix applications with usable performance. FSCQ's specifcations and proofs required signifcantly more work than the implementation, but the work was manageable even for a small team of a few researchers.en_US
dc.description.sponsorshipNational Science Foundation (U.S.) (Award CNS-1053143)en_US
dc.description.sponsorshipNational Science Foundation (U.S.) (Award CCF-1253229)en_US
dc.language.isoen
dc.publisherAssociation for Computing Machinery (ACM)en_US
dc.relation.isversionofhttp://dx.doi.org/10.1145/3051092en_US
dc.rightsCreative Commons Attribution-Noncommercial-Share Alikeen_US
dc.rights.urihttp://creativecommons.org/licenses/by-nc-sa/4.0/en_US
dc.sourceProf. Chlipala via Phoebe Ayersen_US
dc.titleCertifying a file system using crash hoare logicen_US
dc.title.alternativecorrectness in the presence of crashesen_US
dc.typeArticleen_US
dc.identifier.citationChajed, Tej et al. "Certifying a file system using crash hoare logic: correctness in the presence of crashes." Communications of the ACM 60, 4 (April 2017): 75-84 © 2017 The Authorsen_US
dc.contributor.departmentMassachusetts Institute of Technology. Laboratory for Computer Scienceen_US
dc.contributor.departmentMassachusetts Institute of Technology. Computer Science and Artificial Intelligence Laboratoryen_US
dc.contributor.departmentMassachusetts Institute of Technology. Department of Electrical Engineering and Computer Scienceen_US
dc.relation.journalCommunications of the ACMen_US
dc.eprint.versionAuthor's final manuscripten_US
dc.type.urihttp://purl.org/eprint/type/JournalArticleen_US
eprint.statushttp://purl.org/eprint/status/PeerRevieweden_US
dc.date.updated2019-10-04T16:17:23Z
dspace.date.submission2019-10-04T16:17:24Z
mit.journal.volume60en_US
mit.journal.issue4en_US


Files in this item

Thumbnail

This item appears in the following Collection(s)

Show simple item record