Andrew: a distributed personal computing environment
Communications of the ACM - The MIT Press scientific computation series
Scale and performance in a distributed file system
ACM Transactions on Computer Systems (TOCS)
Caching in the Sprite network file system
ACM Transactions on Computer Systems (TOCS)
Coda: A Highly Available File System for a Distributed Workstation Environment
IEEE Transactions on Computers
IOStone: a synthetic file system benchmark
ACM SIGARCH Computer Architecture News
Measurements of a distributed file system
SOSP '91 Proceedings of the thirteenth ACM symposium on Operating systems principles
Accessing Files in an Internet: The Jade File System
IEEE Transactions on Software Engineering
Interposition agents: transparently interposing user code at the system interface
SOSP '93 Proceedings of the fourteenth ACM symposium on Operating systems principles
FTP access as a user-defined file system
ACM SIGOPS Operating Systems Review
Implementing global memory management in a workstation cluster
SOSP '95 Proceedings of the fifteenth ACM symposium on Operating systems principles
Exokernel: an operating system architecture for application-level resource management
SOSP '95 Proceedings of the fifteenth ACM symposium on Operating systems principles
Extensibility safety and performance in the SPIN operating system
SOSP '95 Proceedings of the fifteenth ACM symposium on Operating systems principles
Microkernels meet recursive virtual machines
OSDI '96 Proceedings of the second USENIX symposium on Operating systems design and implementation
Disco: running commodity operating systems on scalable multiprocessors
Proceedings of the sixteenth ACM symposium on Operating systems principles
A secure environment for untrusted helper applications confining the Wily Hacker
SSYM'96 Proceedings of the 6th conference on USENIX Security Symposium, Focusing on Applications of Cryptography - Volume 6
A comparison of OS extension technologies
ATEC '96 Proceedings of the 1996 annual conference on USENIX Annual Technical Conference
Interception in the Aroma system
Proceedings of the ACM 2000 conference on Java Grande
Towards an integrated, web-executable parallel programming tool environment
Proceedings of the 2000 ACM/IEEE conference on Supercomputing
Gathering at the well: creating communities for grid I/O
Proceedings of the 2001 ACM/IEEE conference on Supercomputing
Multiple Bypass: Interposition Agents for Distributed Computing
Cluster Computing
Using Interceptors to Enhance CORBA
Computer
Fine-Grain Access Control for Securing Shared Resources in Computational Grids
IPDPS '02 Proceedings of the 16th International Parallel and Distributed Processing Symposium
Enhancing the Scalability and Usability of Computational Grids via Logical User Accounts and Virtual
IPDPS '01 Proceedings of the 15th International Parallel & Distributed Processing Symposium
Software Development Kit for Dependable Applications in Embedded
ITC '00 Proceedings of the 2000 IEEE International Test Conference
Predicting Device Performance From Pass/Fail Transient Signal Analysis Data
ITC '00 Proceedings of the 2000 IEEE International Test Conference
A COTS Wrapping Toolkit for Fault Tolerant Applications under Windows NT
IOLTW '00 Proceedings of the 6th IEEE International On-Line Testing Workshop (IOLTW)
Acceptability-oriented computing
OOPSLA '03 Companion of the 18th annual ACM SIGPLAN conference on Object-oriented programming, systems, languages, and applications
Grid-computing portals and security issues
Journal of Parallel and Distributed Computing - Scalable web services and architecture
Acceptability-oriented computing
ACM SIGPLAN Notices
Communication and recovery issues in grid environment
InfoSecu '04 Proceedings of the 3rd international conference on Information security
NetHost-sensor: Monitoring a target host's application via system calls
Information Security Tech. Report
RemoteFS: accessing remote file systems for desktop grid computing
Proceedings of the 2007 ACM symposium on Applied computing
TESLA: a transparent, extensible session-layer architecture for end-to-end network services
USITS'03 Proceedings of the 4th conference on USENIX Symposium on Internet Technologies and Systems - Volume 4
DITools: application-level support for dynamic extension and flexible composition
ATEC '00 Proceedings of the annual conference on USENIX Annual Technical Conference
Organizing and sharing distributed personal web-service data
Proceedings of the 17th international conference on World Wide Web
GMount: An Ad Hoc and Locality-Aware Distributed File System by Using SSH and FUSE
CCGRID '09 Proceedings of the 2009 9th IEEE/ACM International Symposium on Cluster Computing and the Grid
GMount: Build your grid file system on the fly
GRID '08 Proceedings of the 2008 9th IEEE/ACM International Conference on Grid Computing
SoftwarePot: an encapsulated transferable file system for secure software circulation
ISSS'02 Proceedings of the 2002 Mext-NSF-JSPS international conference on Software security: theories and systems
Hi-index | 0.00 |
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.