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 per- formance to a majority of applications. BAIO is a low-level disk access mechanism that solves this
problem by exporting the filesystem com- ponent of the kernel to the application level,thereby facilitating con- struction
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.