A fast file system for UNIX

A reimplementation of the UNIX TM file system is described. The reimplementation provides substantially higher throughput rates by using more flexible allocation policies that allow better locality of reference and can be adapted to a wide range of peripheral and processor characteristics. The new file system clusters data that is sequentially accessed and provides two block sizes to allow fast access to large files while not wasting large amounts of space for small files. File access rates of up to ten times faster than the traditional UNIX file system are experienced. Long-needed enhancements to the programmers' interface are discussed. These include a mechanism to place advisory locks on files, extensions of the name space across file systems, the ability to use long file names, and provisions for administrative control of resource usage.

[1]  Gary L. Peterson,et al.  Concurrent Reading While Writing , 1983, TOPL.

[2]  K. Maruyama,et al.  Optimal reorganization of distributed space disk files , 1976, CACM.

[3]  Alan Jay Smith Bibliography on File and I/O System Optimization and related Topics , 1981, ACM SIGOPS Oper. Syst. Rev..

[4]  Kishor S. Trivedi,et al.  Optimal Selection of CPU Speed, Device Capacities, and File Assignments , 1980, JACM.

[5]  James D. Schoeffler,et al.  Estimating file access time of floppy disks , 1983, CACM.

[6]  A. Retrospective,et al.  The UNIX Time-sharing System , 1977 .

[7]  M. V. Wilkes,et al.  The Art of Computer Programming, Volume 3, Sorting and Searching , 1974 .

[8]  Olli Nevalainen,et al.  Determining Blocking Factors for Sequential Files by Heuristic Methods , 1977, Comput. J..

[9]  George G. Robertson,et al.  An extensible file system for hydra , 1978, ICSE '78.

[10]  E. I. Organick,et al.  The Multics Input/Output system , 1971, SOSP '71.

[11]  Michael L. Powell,et al.  The DEMOS file system , 1977, SOSP '77.

[12]  K Thompson,et al.  UNIX implementation , 1986 .

[13]  K. Thompson,et al.  UNIX time-sharing system: UNIX implementation , 1978, The Bell System Technical Journal.

[14]  Alan Jay Smith,et al.  Input/output optimization and disk architectures: A survey , 1981, Perform. Evaluation.

[15]  Liba Svobodova Performance monitoring in computer systems: a structured approach , 1981, OPSR.

[16]  Robert M. White Disk-Storage Technology , 1980 .