USENIX 2001 Abstract
A Toolkit for User-Level File Systems
David Mazières, NYU
This paper describes a C++ toolkit for easily extending
the Unix file system. The toolkit exposes the NFS interface,
allowing new file systems to be implemented
portably at user level. A number of programs have implemented
portable, user-level file systems. However,
they have been plagued by low-performance, deadlock,
restrictions on file system structure, and the need to reboot
after software errors. The toolkit makes it easy to
avoid the vast majority of these problems. Moreover, the
toolkit also supports user-level access to existing file systems
through the NFS interfacea heretofore rarely employed
technique. NFS gives software an asynchronous,
low-level interface to the file system that can greatly benefit
the performance, security, and scalability of certain
applications. The toolkit uses a new asynchronous I/O
library that makes it tractable to build large, event-driven
programs that never block.
- View the full text of this paper in
The Proceedings are published as a collective work, © 2001 by the USENIX Association. All Rights Reserved. Rights
to individual papers remain with the author or the author's employer.
Permission is granted for the noncommercial reproduction of the complete
work for educational or research purposes. USENIX acknowledges all
trademarks within this paper.
- If you need the latest Adobe Acrobat Reader, you can download it from Adobe's site.
- To become a USENIX Member, please see our Membership Information.