Verifying a file system implementation

48Citations
Citations of this article
12Readers
Mendeley users who have this article in their library.
Get full text

Abstract

We present a correctness proof for a basic file system implementation. This implementation contains key elements of standard Unix file systems such as inodes and fixed-size disk blocks. We prove the implementation correct by establishing a simulation relation between the specification of the file system (which models the file system as an abstract map from file names to sequences of bytes) and its implementation (which uses fixed-size disk blocks to store the contents of the files). We used the Athena proof system to represent and validate our proof. Our experience indicates that Athena's use of block-structured natural deduction, support for structural induction and proof abstraction, and seamless integration with high-performance automated theorem provers were essential to our ability to successfully manage a proof of this size. © Springer-Verlag Berlin Heidelberg 2004.

Cite

CITATION STYLE

APA

Arkoudas, K., Zee, K., Kuncak, V., & Rinard, M. (2004). Verifying a file system implementation. Lecture Notes in Computer Science (Including Subseries Lecture Notes in Artificial Intelligence and Lecture Notes in Bioinformatics), 3308, 373–390. https://doi.org/10.1007/978-3-540-30482-1_32

Register to see more suggestions

Mendeley helps you to discover research relevant for your work.

Already have an account?

Save time finding and organizing research with Mendeley

Sign up for free