Stackable file system design addresses these issues in several ways. Complex filing services are constructed from layer ``building blocks'', each of which may be provided by independent parties. There are no syntactic constraints to layer order, and layers can occupy different address spaces, allowing very flexible layer configuration. Independent layer evolution and development is supported by an extensible interface bounding each layer.
This paper discusses stackable layering in detail and presents design techniques it enables. We describe an implementation providing these facilities that exhibits very high performance. By lowering barriers to new filing design, stackable layering offers the potential of broad third party file system development not feasible today.
Paper copies can be obtained by an e-mail request to the authors. On-line copies are available to ACM members through their digital library. If obtaining a paper copy (from TOCS or the authors) is impossible, an older version of this paper is available electronically. Copyright terms for this paper appear below.
@article{Heidemann94a,
author = "John S. Heidemann and Gerald J. Popek",
title = "File-System Development with Stackable Layers",
year = "1994",
volume = "12",
number = "1",
pages = "58--89",
journal = "{ACM} Transactions on Computer Systems",
note = "Preliminary version available as UCLA technical report
CSD-930019",
url = "http://www.isi.edu/~johnh/PAPERS/Heidemann94a.html",
psurl = "http://www.isi.edu/~johnh/PAPERS/Heidemann94a.ps.gz",
pdfurl = "http://www.isi.edu/~johnh/PAPERS/Heidemann94a.pdf",
oldurl = "ftp://ftp.cs.ucla.edu/pub/ficus/ucla_csd_930019.ps.gz",
keywords = "ficus, file system stacking, stackable
layers, i405",
availability = "
Paper copies can be obtained by an
e-mail request
to the authors.
On-line copies
are available to ACM members through their digital library.
If obtaining a paper copy (from TOCS or the authors) is impossible,
an older version of this paper is available electronically.
",
organization = "University of California, Los Angeles",
copyrightholder = "{ACM}",
}
To copy otherwise, to republish, to post on servers or to redistribute to lists, requires prior specific permission and/or a fee. Request Permissions from Publications Dept, ACM Inc., Fax +1 (212) 869-0481, or permissions@acm.org.