Block Asynchronous I/O: A Flexible Infrastructure for User-Level Filesystems

  • Authors:
  • Muthian Sivathanu;Venkateshwaran Venkataramani;Remzi H. Arpaci-Dusseau

  • Affiliations:
  • -;-;-

  • Venue:
  • HiPC '01 Proceedings of the 8th International Conference on High Performance Computing
  • Year:
  • 2001

Quantified Score

Hi-index 0.00

Visualization

Abstract

Block Asynchronous I/O (BAIO) is a mechanism that strives to eliminate the kernel abstraction of a filesystem. In-kernel filesystems serve all applications with a generic set of policies,do not take advantage of application-level knowledge, and consequently deliver sub-optimal performance to a majority of applications. BAIO is a low-level disk access mechanism that solves this problem by exporting the filesystem component of the kernel to the application level, thereby facilitating construction of customized user-level filesystems. The role of the kernel is restricted to regulating access to disk by multiple processes, keeping track of ownership information, and enforcing protection boundaries. All other policies, including physical layout of data on disk and the caching and prefetching of data, are implemented at application-level, in a manner that best suits the specific requirements of the application.