ACM Transactions on Computer Systems (TOCS)
File-system development with stackable layers
ACM Transactions on Computer Systems (TOCS) - Special issue on operating systems principles
A coherent distributed file cache with directory write-behind
ACM Transactions on Computer Systems (TOCS)
Application performance and flexibility on exokernel systems
Proceedings of the sixteenth ACM symposium on Operating systems principles
Soft updates: a solution to the metadata update problem in file systems
ACM Transactions on Computer Systems (TOCS)
Venti: A New Approach to Archival Storage
FAST '02 Proceedings of the Conference on File and Storage Technologies
Metadata Efficiency in Versioning File Systems
FAST '03 Proceedings of the 2nd USENIX Conference on File and Storage Technologies
Semantically-Smart Disk Systems
FAST '03 Proceedings of the 2nd USENIX Conference on File and Storage Technologies
Speculative execution in a distributed file system
Proceedings of the twentieth ACM symposium on Operating systems principles
Proceedings of the twentieth ACM symposium on Operating systems principles
A Versatile and User-Oriented Versioning File System
FAST '04 Proceedings of the 3rd USENIX Conference on File and Storage Technologies
Transactional file systems can be fast
Proceedings of the 11th workshop on ACM SIGOPS European workshop
Versatility and Unix semantics in namespace unification
ACM Transactions on Storage (TOS)
Information and control in file system buffer management
Information and control in file system buffer management
A transactional flash file system for microcontrollers
ATEC '05 Proceedings of the annual conference on USENIX Annual Technical Conference
Wayback: a user-level versioning file system for linux
ATEC '04 Proceedings of the annual conference on USENIX Annual Technical Conference
FAST'05 Proceedings of the 4th conference on USENIX Conference on File and Storage Technologies - Volume 4
Providing tunable consistency for a parallel file store
FAST'05 Proceedings of the 4th conference on USENIX Conference on File and Storage Technologies - Volume 4
Journal-guided resynchronization for software RAID
FAST'05 Proceedings of the 4th conference on USENIX Conference on File and Storage Technologies - Volume 4
Database-aware semantically-smart storage
FAST'05 Proceedings of the 4th conference on USENIX Conference on File and Storage Technologies - Volume 4
Using model checking to find serious file system errors
OSDI'04 Proceedings of the 6th conference on Symposium on Opearting Systems Design & Implementation - Volume 6
File system design for an NFS file server appliance
WTEC'94 Proceedings of the USENIX Winter 1994 Technical Conference on USENIX Winter 1994 Technical Conference
FiST: a language for stackable file systems
ATEC '00 Proceedings of the annual conference on USENIX Annual Technical Conference
Journaling versus soft updates: asynchronous meta-data protection in file systems
ATEC '00 Proceedings of the annual conference on USENIX Annual Technical Conference
Extending file systems using stackable templates
ATEC '99 Proceedings of the annual conference on USENIX Annual Technical Conference
Soft updates: a technique for eliminating most synchronous writes in the fast filesystem
ATEC '99 Proceedings of the annual conference on USENIX Annual Technical Conference
Extending acid semantics to the file system via ptrace
Extending acid semantics to the file system via ptrace
OSDI '06 Proceedings of the 7th symposium on Operating systems design and implementation
OSDI '06 Proceedings of the 7th symposium on Operating systems design and implementation
EXPLODE: a lightweight, general system for finding serious storage system errors
OSDI '06 Proceedings of the 7th symposium on Operating systems design and implementation
"Stacking" Vnodes: a progress report
Usenix-stc'93 Proceedings of the USENIX Summer 1993 Technical Conference on Summer technical conference - Volume 1
Parallax: virtual disks for virtual machines
Proceedings of the 3rd ACM SIGOPS/EuroSys European Conference on Computer Systems 2008
VPFS: building a virtual private file system with a small trusted computing base
Proceedings of the 3rd ACM SIGOPS/EuroSys European Conference on Computer Systems 2008
The case for active block layer extensions
ACM SIGOPS Operating Systems Review
Modular data storage with Anvil
Proceedings of the ACM SIGOPS 22nd symposium on Operating systems principles
Segment-based recovery: write-ahead logging revisited
Proceedings of the VLDB Endowment
Stout: an adaptive interface to scalable cloud storage
USENIXATC'10 Proceedings of the 2010 USENIX conference on USENIX annual technical conference
jVPFS: adding robustness to a secure stacked file system with untrusted local storage components
USENIXATC'11 Proceedings of the 2011 USENIX conference on USENIX annual technical conference
Summary of PLOS 2011: the sixth workshop on programming languages and operating systems
ACM SIGOPS Operating Systems Review
FAST'12 Proceedings of the 10th USENIX conference on File and Storage Technologies
Proceedings of the Twenty-Fourth ACM Symposium on Operating Systems Principles
ACM SIGOPS 24th Symposium on Operating Systems Principles
Proceedings of the Twenty-Fourth ACM Symposium on Operating Systems Principles
Hi-index | 0.00 |
Reliable storage systems depend in part on "write-before" relationships where some changes to stable storage are delayed until other changes commit. A journaled file system, for example, must commit a journal transaction before applying that transaction's changes, and soft updates and other consistency enforcement mechanisms have similar constraints, implemented in each case in system-dependent ways. We present a general abstraction, the patch, that makes write-before relationships explicit and file system agnostic. A patch-based file system implementation expresses dependencies among writes, leaving lower system layers to determine write orders that satisfy those dependencies. Storage system modules can examine and modify the dependency structure, and generalized file system dependencies are naturally exportable to user level. Our patch-based storage system, Feather stitch, includes several important optimizations that reduce patch overheads by orders of magnitude. Our ext2 prototype runs in the Linux kernel and supports a synchronous writes, soft updates-like dependencies, and journaling. It outperforms similarly reliable ext2 and ext3 configurations on some, but not all, benchmarks. It also supports unusual configurations, such as correct dependency enforcement within a loopback file system, and lets applications define consistency requirements without micromanaging how those requirements are satisfied.