User defined services in file systems: A case study and prototype implementation
Ivar Bergman, Per-Ola Gustafsson · 2004
File systems are traditionally implemented as an isolated part of the operating system. File system services, such as on disk storage of data and journaling, are predefined by file system vendors. Because of this, it is difficult and sometimes impossible to introduce user defined services to a file system. This has caused application developers to implement their own filing services within their applications, at the expense of reusability and development time. This thesis presents file system design techniques that allow file systems to be extended by user defined services. The design techniques are examplified by two file systems, WinFS and Reiser4. As a part of the thesis we have designed and implemented a file system prototype. This prototype, together with WinFS and Reiser4, has been used as a base for a survey that concentrates on the following topics of extendable file systems: file operations, dynamic loading of operations, file system operations and file system name spaces.