Systems that use or serve multimedia data require timely access to data on hard drives. To ensure adequate performance users must either prevent overload of disk resources, or use real-time algorithms that rely on intricate knowledge of disk internals to meet deadline requirements. We have developed Hierarchical Disk Sharing (HDS) to allow disks to be fully utilized while sustaining a bandwidth reservation, without requiring detailed knowledge of the drive internals. HDS uses a hierarchy of token bucket filters to isolate disk access among clients and groups of clients, and to allow for reclaiming of unused bandwidth. We discuss the design of HDS and present our implementation in a Linux block device driver, demonstrating the effectiveness (and limitations) of this approach. Categories and Subject Descriptors D.4.2 [Operating Systems]: Storage Management—Secondary storage; D.4.8 [Operating Systems]: Performance General Terms Algorithms, Design, Performance Keywords Storage, Disk, ...
Joel C. Wu, Scott A. Banachowski, Scott A. Brandt