Disk file allocation based on the buddy system
- 1 October 1987
- journal article
- Published by Association for Computing Machinery (ACM) in ACM Transactions on Computer Systems
- Vol. 5 (4) , 352-370
- https://doi.org/10.1145/29868.29871
Abstract
The buddy system is known for its speed and simplicity. However, high internal and external fragmentation have made it unattractive for use in operating system file layout. A variant of the binary buddy system that reduces fragmentation is described. Files are allocated on up to t extents, and inoptimally allocated files are periodically reallocated. The Dartmouth Time-Sharing System (DTSS) uses this method. Several installations of DTSS, representing different classes of workload, are studied to measure the method's performance. Internal fragmentation varies from 2-6 percent, and external fragmentation varies from 0-10 percent for expected request sizes. Less than 0.1 percent of the CPU is spent executing the algorithm. In addition, most files are stored contiguously on disk. The mean number of extents per file is less than 1.5, and the upper bound is t . Compared to the tile layout method used by UNIX, the buddy system results in more efficient access but less efficient utilization of disk space. As disks become larger and less expensive per byte, strategies that achieve efficient I/O throughput at the expense of some storage loss become increasingly attractive.Keywords
This publication has 17 references indexed in Scilit:
- Improving the Performance of Buddy SystemsIEEE Transactions on Computers, 1986
- The structure of microcomputer file systemsCommunications of the ACM, 1986
- On the worst case performance of buddy systemsActa Informatica, 1985
- A fast file system for UNIXACM Transactions on Computer Systems, 1984
- Tailored-List and Recombination-Delaying Buddy SystemsACM Transactions on Programming Languages and Systems, 1984
- Analysis of free-storage algorithms-visitedIBM Systems Journal, 1984
- Memory fragmentation in buddy methods for dynamic storage allocationActa Informatica, 1980
- Reduction of Storage Fragmentation On Direct Access DevicesIBM Journal of Research and Development, 1979
- Do disk arms move?ACM SIGMETRICS Performance Evaluation Review, 1972
- A fast storage allocatorCommunications of the ACM, 1965