Affiliation:
1. Univ. of California at Santa Barbara, Santa Barbara
Abstract
In this article we show how to extend a wide range of functionality of standard operation systems completely at the user level. Our approach works by intercepting selected system calls at the user level, using tracing facilities such as the /proc file system provided by many Unix operating systems. The behavior of some intercepted system calls is then modified to implement new functionality. This approach does not require any relinking or recompilation of existing applications. In fact, the extensions can even be dynamically “installed” into already running processes. The extensions work completely at the user level and install without system administrator assistance. Individual users can choose what extensions to run, in effect creating a personalized operating system view for themselves. We used this approach to implement a global file system, called Ufo, which allows users to treat remote files exactly as if they were local. Currently, Ufo supports file access through the FTP and HTTP protocols and allows new protocols to be plugged in. While several other projects have implemented global file system abstractions, they all require either changes to the operating system or modifications to standard libraries. The article gives a detailed performance analysis of our approach to extending the OS and establishes that Ufo introduces acceptable overhead for common applications even though intercepting individual system calls incurs a high cost.
Publisher
Association for Computing Machinery (ACM)
Cited by
22 articles.
订阅此论文施引文献
订阅此论文施引文献,注册后可以免费订阅5篇论文的施引文献,订阅后可以查看论文全部施引文献
1. SysXCHG: Refining Privilege with Adaptive System Call Filters;Proceedings of the 2023 ACM SIGSAC Conference on Computer and Communications Security;2023-11-15
2. Towards Coordinated Work on the Grid: Data Sharing Through Virtual File Systems;Process Coordination and Ubiquitous Computing;2020-09-23
3. Introducing Context Awareness in Unmodified, Context-unaware Software;Proceedings of the 12th International Conference on Evaluation of Novel Approaches to Software Engineering;2017
4. GMount: An Ad Hoc and Locality-Aware Distributed File System by Using SSH and FUSE;2009 9th IEEE/ACM International Symposium on Cluster Computing and the Grid;2009
5. GMount: Build your grid file system on the fly;2008 9th IEEE/ACM International Conference on Grid Computing;2008-09