ACM Transactions on Computer Systems (TOCS)
Disk cache—miss ratio analysis and design considerations
ACM Transactions on Computer Systems (TOCS)
On the worst case performance of buddy systems
Acta Informatica
The structure of microcomputer file systems
Communications of the ACM - The MIT Press scientific computation series
Improving the Performance of Buddy Systems
IEEE Transactions on Computers
The art of computer programming, volume 1 (3rd ed.): fundamental algorithms
The art of computer programming, volume 1 (3rd ed.): fundamental algorithms
Statistical Properties of the Buddy System
Journal of the ACM (JACM)
A trace-driven analysis of the UNIX 4.2 BSD file system
Proceedings of the tenth ACM symposium on Operating systems principles
Tailored-List and Recombination-Delaying Buddy Systems
ACM Transactions on Programming Languages and Systems (TOPLAS)
Communications of the ACM
Communications of the ACM
Communications of the ACM
SOSP '77 Proceedings of the sixth ACM symposium on Operating systems principles
A study of file sizes and functional lifetimes
SOSP '81 Proceedings of the eighth ACM symposium on Operating systems principles
New methods for dynamic storage allocation (Fast Fits)
SOSP '83 Proceedings of the ninth ACM symposium on Operating systems principles
ACM SIGMETRICS Performance Evaluation Review
The Starburst long field manager
VLDB '89 Proceedings of the 15th international conference on Very large data bases
The performance of three database storage structures for managing large objects
SIGMOD '92 Proceedings of the 1992 ACM SIGMOD international conference on Management of data
A High-Performance Memory Allocator for Object-Oriented Systems
IEEE Transactions on Computers
Fast Allocation and Deallocation with an Improved Buddy System
Proceedings of the 19th Conference on Foundations of Software Technology and Theoretical Computer Science
Tuning file system block addressing for performance
Proceedings of the 44th annual Southeast regional conference
Hi-index | 0.00 |
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.