Download:
by Erez Zadok
In Proceedings of the Annual USENIX Technical Conference
http://www.ncl.cs.columbia.edu/publications/usenix2001_sca.pdf
Add To MetaCart
Abstract:
Stackable file systems can provide extensible file system functionality with minimal performance overhead and development cost. However, previous approaches provide only limited functionality. In particular, they do not support size-changing algorithms (SCAs), which are important and useful for many applications such as compression and encryption. We propose fast indexing, a technique for efficient support of SCAs in stackable file systems. Fast indexing provides a page mapping between file system layers in a way that can be used with any SCA. We use index files to store this mapping. Index files are designed to be recoverable if lost and add less than 0.1 % disk space overhead. We have implemented fast indexing using portable stackable templates, and we have used this system to build several example file systems with SCAs. We demonstrate that fast index files have low overhead for typical user workloads such as large compilations, only 2.3 % over other stacked file systems and 4.7 % over non-stackable file systems. Our system can deliver better performance with SCAs than userlevel applications, as much as five times faster. 1
Citations
|
195
|
Vnodes: an architecture for multiple file system types
– Kleiman
- 1986
|
|
153
|
A comparison of file system workloads
– Roselli, Lorch, et al.
- 2000
|
|
151
|
File-system Development with Stackable Layers
– Heidemann, Popek
- 1994
|
|
114
|
Plan 9 from Bell Labs
– Pike, Presotto, et al.
- 1990
|
|
106
|
Implementation of the ficus replicated file system
– Guy, Heidemann, et al.
- 1990
|
|
82
|
Long term distributed file reference tracing: Implementation and experience
– Mummert, Satyanarayanan
- 1996
|
|
78
|
FiST: A Language for Stackable File Systems
– Zadok, Nieh
- 2000
|
|
70
|
Evolving the Vnode Interface
– Rosenthal
|
|
61
|
Cryptfs: A stackable vnode level encryption file system
– Zadok, Badulescu, et al.
- 1998
|
|
55
|
Extensible file systems in Spring
– Khalidi, Nelson
- 1993
|
|
47
|
An overview of the Spring system
– Mitchell
- 1994
|
|
45
|
Online data compression in a log-structured file system
– Burrows, Jerian, et al.
- 1992
|
|
33
|
Performance of cache coherence in stackable filing
– Heidemann, Popek
- 1995
|
|
32
|
Extending file systems using stackable templates
– Zadok, Bădulescu, et al.
- 1999
|
|
31
|
Stacking” Vnodes: A progress report
– Skinner, Wong
- 1993
|
|
22
|
Combining the concepts of compression and caching for a two-level filesystem
– Cate, Gross
|
|
20
|
A layered approach to file system development
– Heidemann, Popek
- 1991
|
|
13
|
A Stackable File System Interface for Linux
– Zadok, Bădulescu
- 1999
|
|
11
|
The HURD: Towards a New Strategy of OS Design. GNU’s Bulletin. Free Software Foundation
– Bushnell
- 1994
|
|
8
|
Requirements for a "Stacking
– Rosenthal
- 1992
|
|
8
|
Requirements for a “Stacking” Vnode/VFS
– Rosenthal
- 1992
|
|
6
|
Algorithm Types and Modes
– Schneier
- 1996
|
|
4
|
FiST: A System for Stackable File System Code Generation
– ZADOK
- 2001
|
|
2
|
E2compr: Transparent File Compression for Linux
– Ayers
- 1997
|
|
2
|
Deflate 1.3 Specification. RFC 1051. Network Working Group
– Deutsch
- 1996
|
|
2
|
The zlib Home Page. http://www.cdrom.com/pub/infozip/zlib
– Gailly, Adler
|
|
1
|
The Bonnie Home Page. http://www.textuality.com/bonnie
– Coker
|