Abstract: We propose and evaluate the concept of a semantically-smart disk system (SDS). As opposed to a traditional "smart " disk, an SDS has detailed knowledge of how the file system above is using the disk, including information about the file system on-disk data structures and policies. An SDS exploits this knowledge to transparently improve performance or enhance functionality beneath a standard block read/write interface. To automatically acquire this knowledge, we introduce a tool (EOF) that can discover file-system specifics for certain types of file systems, and then show how an SDS can exploit this knowledge on-line to understand file-system behavior. We quantify the space and time overheads that are common in SDS's, showing that they are not excessive. We then study the issues surrounding SDS's by designing and implementing a number of prototype SDS's as case studies; each case study exploits knowledge of some aspect of the file system to implement powerful functionality beneath the standard SCSI interface. Overall, we find that a surprising amount of functionality can be embedded within an SDS, hinting at a future where disk manufacturers can compete on enhanced functionality and not simply cost-per-byte and performance. 1
|
992
|
A Logic of Authentication
– Burrows, Abadi, et al.
- 1990
|
|
817
|
Disconnected operation in the Coda file system
– Kistler, Satyanarayanan
- 1992
|
|
765
|
The temporal logic of actions
– Lamport
- 1994
|
|
722
|
The design and implementation of a logstructured file system
– Rosenblum, Ousterhout
- 1991
|
|
588
|
A case for redundant arrays of inexpensive disks (RAID
– Patterson, Gibson, et al.
- 1988
|
|
518
|
Storage management and caching in PAST, a large-scale, persistent peer-to-peer storage utility
– Rowstron, Druschel
- 2001
|
|
481
|
Xen and the art of virtualization
– Barham, Dragovic, et al.
- 2003
|
|
471
|
A Fast File System for UNIX
– McKusick, Joy, et al.
- 1984
|
|
309
|
Why Aren't Operating Systems Getting Faster As Fast as Hardware
– Ousterhout
- 1990
|
|
268
|
Online aggregation
– Hellerstein, Haas, et al.
- 1997
|
|
261
|
Aries: A transaction recovery method supporting fine-granularity locking and partial rollbacks using write-ahead logging
– Mohan, Haderle, et al.
- 1992
|
|
255
|
Petal: Distributed Virtual Disks
– Lee, A
- 1996
|
|
253
|
Garbage collection in an uncooperative environment
– BOEHM, WEISER
- 1988
|
|
238
|
Frangipani: A Scalable Distributed File System
– Thekkath, Mann, et al.
- 1997
|
|
206
|
The Google file system
– Ghemawat, Gobioff, et al.
- 2003
|
|
202
|
PostMark: A New File System Benchmark
– Katcher
- 1997
|
|
199
|
Managing Energy and Server Resources in Hosting Centers
– Chase, Anderson, et al.
- 2001
|
|
172
|
Shoring up persistent applications
– Carey, DeWitt, et al.
- 1994
|
|
168
|
Non-Volatile Memory for Fast, Reliable File Systems
– Baker, Asami, et al.
- 1992
|
|
162
|
A Comparison of File System Workloads
– Roselli, Lorch, et al.
- 2000
|
|
138
|
A cost-effective, high-bandwidth storage architecture
– Gibson, Nagle, et al.
- 1998
|
|
136
|
Disk shadowing
– Bitton, Gray
- 1988
|
|
134
|
The structure of the THE multiprogramming system
– Dijkstra
- 1968
|
|
134
|
Idleness is not sloth
– Golding, Bosch, et al.
- 1995
|
|
129
|
Memory resource management in vmware esx server
– Waldspurger
- 2002
|
|
128
|
Reimplementing the Cedar File System using Logging and Group Commit
– Hagmann
- 1987
|
|
128
|
On-line extraction of SCSI disk drive parameters
– Worthington, Ganger, et al.
- 1995
|
|
111
|
The Logical Disk: A New Approach to Improving File Systems
– Jonge, Kaashoek, et al.
- 1993
|
|
108
|
Active Storage for Large-Scale Data Mining and Multimedia
– Riedel, Gibson, et al.
- 1998
|
|
107
|
Hippocratic databases
– Agrawal, Kiernan, et al.
- 2002
|
|
107
|
Cmc: A pragmatic approach to model checking real code
– MUSUVATHI, PARK, et al.
- 2002
|
|
99
|
Self-securing storage: protecting data in compromised systems
– STRUNK, GOODSON, et al.
- 2000
|
|
98
|
Chained Declustering: A New Availability Strategy for Multiprocessor Database Machines
– HSIAO, DEWITT
- 1990
|
|
90
|
Taming aggressive replication in the Pangaea wide-area file system
– Saito, Karamanolis, et al.
- 2002
|
|
82
|
Metadata Update Performance in File Systems
– Ganger, Patt
- 1994
|
|
78
|
Secure Deletion of Data from Magnetic and Solid-State Memory
– Gutmann
- 1996
|
|
76
|
LOCUS: A Network Transparent, High Reliability Distributed System
– Popek, Walker, et al.
- 1981
|
|
75
|
Interposed Request Routing for Scalable Network Storage
– Anderson, Chase, et al.
- 2000
|
|
74
|
Information and Control in Gray-Box Systems
– Arpaci-Dusseau, Arpaci-Dusseau
- 2001
|
|
72
|
A Case for Network-Attached Secure Disks
– Gibson, Nagle, et al.
- 1997
|
|
71
|
Automated disk drive characterization
– SCHINDLER, GANGER
- 1999
|
|
70
|
Parity Striping of Disc Arrays: Low-cost Reliable Storage with Acceptable Throughput
– Gray, Horst, et al.
- 1990
|
|
69
|
My cache or yours? making storage more exclusive
– Wong, Wilkes
- 2002
|
|
65
|
Disk array storage system reliability
– Burkhard, Menon
- 1993
|
|
64
|
The multi-queue replacement algorithm for second level buffer caches
– Zhou, Philbin, et al.
- 2001
|
|
62
|
Loge: A Self-Organizing Disk Controller
– English, Stepanov
- 1992
|
|
62
|
Disk shuffling
– Ruemmler, Wilkes
- 1991
|
|
61
|
Scheduling with implicit information in distributed systems
– Arpaci-Dusseau, Culler, et al.
- 1998
|
|
61
|
Hive: Fault Containment for Shared-Memory Multiprocessors
– Chapin, Rosenblum, et al.
- 1995
|
|
59
|
Designing disk arrays for high data reliability
– Gibson, Patterson
- 1993
|