File System Virtual Appliances: Portable File System ImplementationsACM Transactions on Storage, Vol. 8, No. 3, Article 39, Publication date: May 2012.
Michael Abd-El-Malek*+ , Matthew Wachs*, James Cipar*, Karan Sanghi*, Gregory R. Ganger*,
Garth A. Gibson*^, Michael K. Reiter†
* Carnegie Mellon University
^ Panasas, Inc.
† University of North Carolina at Chapel Hill
File system virtual appliances (FSVAs) address the portability headaches that plague file system (FS) developers. By packaging their FS implementation in a VM, separate from the VM that runs user applications, they can avoid the need to port the file system to each OS and OS version. A small FS-agnostic proxy, maintained by the core OS developers, connects the FSVA to whatever OS the user chooses. This paper describes an FSVA design that maintains FS semantics for unmodified FS implementations and provides desired OS and virtualization features, such as a unified buffer cache and VM migration. Evaluation of prototype FSVA implementations in Linux and NetBSD, using Xen as the VMM, demonstrates that the FSVA architecture is efficient, FS-agnostic, and able to insulate file system implementations from OS differences that would otherwise require explicit porting.
KEYWORDS: Design, Performance, Operating systems, virtual machines, file systems
FULL TR: pdf