Userlandfs

Running UserlandFS

Article contributed by czeidler on Tue, 2007-11-06 16:26

The UserlandFS is a file system wrapper for the kernel (similar to FUSE on Linux) which loads file system add-ons in userspace. In this way, it is a great tool for developing file system add-ons without unwanted trips to the Kernel Debugging Land. On top of that, several interesting test add-ons already exist for it in the Haiku source tree, including a network file system with full support for extended file attributes (meta data). The API which a file system add-on for UserlandFS has to implement is almost identical to the "real" kernel file system API, so that it is easy to migrate the add-on to the kernel once it is ready.

Building UserlandFS and it's "test" file system add-ons

The easiest way is to ask the Haiku build system to collect all the components for you. Adding the following section to your build/jam/UserBuildConfig will do that:

# UserlandFS installation
local userlandFSDir = [ FDirName $(HAIKU_OUTPUT_DIR) userlandfs ] ;
 
HaikuInstall install-userlandfs : $(userlandFSDir)
	: # userlandfs
	  <test>userlandfs
	  <test>UserlandFSServer
	  <test>ufs_mount
 
	  # netfs
	  <test