Stackable File System Development in User LandNot everyone can or want to develop file systems in the kernel. Developing
them in Userland is easier but userland file systems suffer from performance
problems. Some develop userland file systems using a userland NFS server,
much the way automounters such as Amd
work. Others develop file systems using LUFS.
It also has limitations.
In this project we develop a stackable file system that allows you to
control which VFS operations are passed to userland. This way we only pass
the operations that are needed and no more. We also control how much
information we pass to userland (just file name, just operation, full
directory pathname, etc.). Again, this is designed to reduce the amount of
data that needs to be copied to userland. For further efficiency, we
communicate with a userland component using either user/kernel shared memory
or the Linux netlink socket. In userland, we have a library wrapper can be
integrated into any application, and daemon driver that can act as a file
server. With these tools, users can experiment with file system extensions
without having to know kernel internals or become file system hackers.
Conference and Workshop Papers:
||Name (click for home page)
||Sep 2002 - Dec 2003
||Manager, Sustaining Engineering, NetApp (Bangalore, India)
||Sep 2003 - Dec 2004
||Staff Engineer, Performance and Storage groups, VMware, Inc. (Palo Alto, CA)