% [1]>linuxsymposium July 20-23rd, 2005, Ottawa, Canada % Registration Active Block I/O Scheduling System (ABISS) % % [2]Register/Submit Giel de Nijs (giel.de.nijs@philips.com) The Active Block I/O Scheduling System (ABISS) is an extension of the hard-disk storage subsystem of Linux. It is designed to provide guaranteed reading and writing bitrates to applications, with minimal overhead and low latency. The core element of ABISS is a scheduler that performs intelligent read-ahead or write-back, based on the access profile the application has previously requested. An adaptation of existing work on incorporating support for priority requests into the elevator (``IO scheduler'') is part of our implementation, and enables ABISS to ensure that real-time requests are served in a timely manner. Besides the extension to the storage subsystem, we have implemented experimental support for delayed allocation in the FAT file system, to be effectively able to provide the guaranteed writing bitrates. We are working on combining this with disk space reservations, which are also part of on-going development on ext3. Applications use the regular POSIX API, and control the ABISS extensions either directly through ioctls, or a library offering simple wrapper functions. ABISS contains by a user-space demon that oversees resource allocation and handles admission control. Also some minor modifications were made to file system drivers. ABISS currently supports FAT, VFAT, ext2, and ext3. In a set of experimental runs with real-life data rates on a deliberately not very powerful test system reflecting a typical embedded device, we have measured that all read and write operations completed within 6 ms, while a background load of eight concurrent greedy readers or writers, served in a best-effort way, experienced delays worse by a factor of more than 4000.