Distrbution and Abstract Types in Emerald
IEEE Transactions on Software Engineering - Special issue on distributed systems
VMTP: a transport protocol for the next generation of communication systems
SIGCOMM '86 Proceedings of the ACM SIGCOMM conference on Communications architectures & protocols
The packer filter: an efficient mechanism for user-level network code
SOSP '87 Proceedings of the eleventh ACM Symposium on Operating systems principles
The Sprite Network Operating System
Computer
SIGCOMM '88 Symposium proceedings on Communications architectures and protocols
Preserving and using context information in interprocess communication
ACM Transactions on Computer Systems (TOCS)
Tools for implementing network protocols
Software—Practice & Experience
Implementing remote procedure calls
ACM Transactions on Computer Systems (TOCS)
The Sprite Remote Procedure Call System
The Sprite Remote Procedure Call System
Preserving and using context information in interprocess communication
ACM Transactions on Computer Systems (TOCS)
The X-Kernel: An Architecture for Implementing Network Protocols
IEEE Transactions on Software Engineering
SIGCOMM '91 Proceedings of the conference on Communications architecture & protocols
Using continuations to implement thread management and communication in operating systems
SOSP '91 Proceedings of the thirteenth ACM symposium on Operating systems principles
Technical summary of the second IEEE workshop on workstation operating systems
ACM SIGMETRICS Performance Evaluation Review
Lightweight causal and atomic group multicast
ACM Transactions on Computer Systems (TOCS)
Practical trade-offs for open interconnection
CSC '92 Proceedings of the 1992 ACM annual conference on Communications
ACM Transactions on Computer Systems (TOCS)
File-system development with stackable layers
ACM Transactions on Computer Systems (TOCS) - Special issue on operating systems principles
Performance of cache coherence in stackable filing
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
A framework for protocol composition in Horus
Proceedings of the fourteenth annual ACM symposium on Principles of distributed computing
Horus: a flexible group communication system
Communications of the ACM
System support for object groups
Proceedings of the 13th ACM SIGPLAN conference on Object-oriented programming, systems, languages, and applications
Technical summary of the second IEEE workshop on workstation operating systems
ACM SIGOPS Operating Systems Review
Efficient Java RMI for parallel programming
ACM Transactions on Programming Languages and Systems (TOPLAS)
Object-Oriented Design of QoS Multicast Communications
Cluster Computing
A Reflective Middleware Framework for Communication in Dynamic Environments
On the Move to Meaningful Internet Systems, 2002 - DOA/CoopIS/ODBASE 2002 Confederated International Conferences DOA, CoopIS and ODBASE 2002
Distributed communication in ML
Journal of Functional Programming
Dryverl: a flexible Erlang/C binding compiler
Proceedings of the 2006 ACM SIGPLAN workshop on Erlang
Events in an RPC based distributed system
TCON'95 Proceedings of the USENIX 1995 Technical Conference Proceedings
Operating system support for multi-user, remote, graphical interaction
ATEC '00 Proceedings of the annual conference on USENIX Annual Technical Conference
Using the strategy design pattern to compose reliable distributed protocols
COOTS'97 Proceedings of the 3rd conference on USENIX Conference on Object-Oriented Technologies (COOTS) - Volume 3
An extensible protocol architecture for application-specific networking
ATEC '96 Proceedings of the 1996 annual conference on USENIX Annual Technical Conference
Evaluating windows NT terminal server performance
WINSYM'99 Proceedings of the 3rd conference on USENIX Windows NT Symposium - Volume 3
Jonathan: an open distributed processing environment in Java
Middleware '98 Proceedings of the IFIP International Conference on Distributed Systems Platforms and Open Distributed Processing
Hi-index | 0.02 |
This paper reports our experiences implementing remote procedure call (RPC) protocols in the x-kernel. This exercise is interesting because the RPC protocols exploit two novel design techniques: virtual protocols and layered protocols. These techniques are made possible because the x-kernel provides an object-oriented infrastructure that supports three significant features: a uniform interface to all protocols, a late binding between protocol layers, and a small overhead for invoking any given protocol layer. For each design technique, the paper motivates the technique with a concrete example, describes how it is applied to the implementation of RPC protocols, and presents the results of experiments designed to evaluate the technique.