|
|
1.1 ! root 1: .\" Copyright (c) 1986 The Regents of the University of California. ! 2: .\" All rights reserved. ! 3: .\" ! 4: .\" Redistribution and use in source and binary forms are permitted ! 5: .\" provided that the above copyright notice and this paragraph are ! 6: .\" duplicated in all such forms and that any documentation, ! 7: .\" advertising materials, and other materials related to such ! 8: .\" distribution and use acknowledge that the software was developed ! 9: .\" by the University of California, Berkeley. The name of the ! 10: .\" University may not be used to endorse or promote products derived ! 11: .\" from this software without specific prior written permission. ! 12: .\" THIS SOFTWARE IS PROVIDED ``AS IS'' AND WITHOUT ANY EXPRESS OR ! 13: .\" IMPLIED WARRANTIES, INCLUDING, WITHOUT LIMITATION, THE IMPLIED ! 14: .\" WARRANTIES OF MERCHANTABILITY AND FITNESS FOR A PARTICULAR PURPOSE. ! 15: .\" ! 16: .\" @(#)0.t 6.3 (Berkeley) 3/7/89 ! 17: .\" ! 18: .EQ ! 19: delim $$ ! 20: .EN ! 21: .if n .ND ! 22: .TL ! 23: A Fast File System for UNIX* ! 24: .EH 'SMM:14-%''A Fast File System for \s-2UNIX\s+2' ! 25: .OH 'A Fast File System for \s-2UNIX\s+2''SMM:14-%' ! 26: .AU ! 27: Marshall Kirk McKusick, William N. Joy\(dg, ! 28: Samuel J. Leffler\(dd, Robert S. Fabry ! 29: .AI ! 30: Computer Systems Research Group ! 31: Computer Science Division ! 32: Department of Electrical Engineering and Computer Science ! 33: University of California, Berkeley ! 34: Berkeley, CA 94720 ! 35: .AB ! 36: .FS ! 37: * UNIX is a trademark of Bell Laboratories. ! 38: .FE ! 39: .FS ! 40: \(dg William N. Joy is currently employed by: ! 41: Sun Microsystems, Inc, 2550 Garcia Avenue, Mountain View, CA 94043 ! 42: .FE ! 43: .FS ! 44: \(dd Samuel J. Leffler is currently employed by: ! 45: Lucasfilm Ltd., PO Box 2009, San Rafael, CA 94912 ! 46: .FE ! 47: .FS ! 48: This work was done under grants from ! 49: the National Science Foundation under grant MCS80-05144, ! 50: and the Defense Advance Research Projects Agency (DoD) under ! 51: ARPA Order No. 4031 monitored by Naval Electronic System Command under ! 52: Contract No. N00039-82-C-0235. ! 53: .FE ! 54: A reimplementation of the UNIX file system is described. ! 55: The reimplementation provides substantially higher throughput ! 56: rates by using more flexible allocation policies ! 57: that allow better locality of reference and can ! 58: be adapted to a wide range of peripheral and processor characteristics. ! 59: The new file system clusters data that is sequentially accessed ! 60: and provides two block sizes to allow fast access to large files ! 61: while not wasting large amounts of space for small files. ! 62: File access rates of up to ten times faster than the traditional ! 63: UNIX file system are experienced. ! 64: Long needed enhancements to the programmers' ! 65: interface are discussed. ! 66: These include a mechanism to place advisory locks on files, ! 67: extensions of the name space across file systems, ! 68: the ability to use long file names, ! 69: and provisions for administrative control of resource usage. ! 70: .sp ! 71: .LP ! 72: Revised February 18, 1984 ! 73: .AE ! 74: .LP ! 75: .sp 2 ! 76: CR Categories and Subject Descriptors: ! 77: D.4.3 ! 78: .B "[Operating Systems]": ! 79: File Systems Management \- ! 80: .I "file organization, directory structures, access methods"; ! 81: D.4.2 ! 82: .B "[Operating Systems]": ! 83: Storage Management \- ! 84: .I "allocation/deallocation strategies, secondary storage devices"; ! 85: D.4.8 ! 86: .B "[Operating Systems]": ! 87: Performance \- ! 88: .I "measurements, operational analysis"; ! 89: H.3.2 ! 90: .B "[Information Systems]": ! 91: Information Storage \- ! 92: .I "file organization" ! 93: .sp ! 94: Additional Keywords and Phrases: ! 95: UNIX, ! 96: file system organization, ! 97: file system performance, ! 98: file system design, ! 99: application program interface. ! 100: .sp ! 101: General Terms: ! 102: file system, ! 103: measurement, ! 104: performance. ! 105: .bp ! 106: .ce ! 107: .B "TABLE OF CONTENTS" ! 108: .LP ! 109: .sp 1 ! 110: .nf ! 111: .B "1. Introduction" ! 112: .LP ! 113: .sp .5v ! 114: .nf ! 115: .B "2. Old file system ! 116: .LP ! 117: .sp .5v ! 118: .nf ! 119: .B "3. New file system organization ! 120: 3.1. Optimizing storage utilization ! 121: 3.2. File system parameterization ! 122: 3.3. Layout policies ! 123: .LP ! 124: .sp .5v ! 125: .nf ! 126: .B "4. Performance ! 127: .LP ! 128: .sp .5v ! 129: .nf ! 130: .B "5. File system functional enhancements ! 131: 5.1. Long file names ! 132: 5.2. File locking ! 133: 5.3. Symbolic links ! 134: 5.4. Rename ! 135: 5.5. Quotas ! 136: .LP ! 137: .sp .5v ! 138: .nf ! 139: .B References
This archive runs on limited infrastructure. Preserving old code on modern bandwidth. Automated agents are requested to crawl responsibly.