SquirrelFS: using the Rust compiler to check file-system crash consistency
Talkat 18th USENIX Symposium on Operating Systems Design and Implementation (OSDI '24) · 2024-07-10..07-12·
summary
SquirrelFS is a 7,500‑line persistent‑memory file system implemented in Rust that encodes crash‑ordering rules in types so compilation proves certain crash consistency properties. It implements synchronous soft updates and a type‑state checked API, runs in the Linux kernel via Rust for Linux, and provides atomic metadata operations including rename. Developers get compile‑time errors for ordering bugs; a full build and type check takes tens of seconds. Performance matches or exceeds EXT4‑DAX, NOVA, and WineFS in benchmarks, and the design is model‑checked in Alloy.
AI-written summary · about
chapters (7)
- 0:00Introduction to SquirrelFS
- 3:28Design of SquirrelFS
- 4:15Ordering and crash consistency
- 7:43The typestate pattern
- 8:11Implementation and evaluation
- 13:21Performance benchmarks
- 14:03Conclusion and summary
related talks
28mBFFFS: a novel SMR-native file system written in Rust
10mKeynote: Rust in the Linux Kernel: A New Era for Cloud Native Performance and Security
46mRust for Linux
14mKeynote: Rust in the Linux Kernel, Why?
16mA re-introduction to s3fs
40mKeynote: Kernel Developer Roundtable
30mAnatomy of a run-time: your contract with the kernel
51mRust in the Linux kernel
