Abstract
Heterogeneity in hardware and software is an inevitable consequence of experimental computer research. At the University of Washington, the Heterogeneous Computer Systems (HCS) project is a major research and development effort whose goal is to simplify the interconnection of heterogeneous computer systems. A cornerstone of our effort is our HCS Remote Procedure Call (HRPC) facility. The HRPC design involves the careful specification of clean interfaces between the five principal components of an Rpcfacility: the stubs, which are interposed between the client (also the server) and the runtime support; the binding protocol, which allows a client to locate a particular server; the data representation, which determines how data values are communicated; the transport protocol, which determines how data is carried from one host to another; and the control protocol, used internally by the RPC facility to track the state of a call. An RPC client (or server) and its associated stub can view each of the remaining four components as a “black box.” These black boxes can be “mixed and matched.” The set of protocols to be used is determined dynamically at bind time-long after the client (or server) has been written, the stub has been generated, and the two have been linked. This design meets two key objectives: •First, we are able to emulate existing remote procedure callfacilities by providing appropriate black boxes. This allows us to communicate with systems we cannot (or do not wish to) modify. This is a capability that is unique to the HRPC facility. • Second, we are able to employ existing software (e.g., transport protocols) extensively in building an RPC facility for a new system that does not have a native facility. Other attempts at heterogeneous RPC facilities allow this, but with much less breadth than our design. This paper presents the objectives of the HCS project and of the HRPC facility, describes the design of HRPC, and presents our experiences with our current implementation, including a discussion of applications and performance. Copyright © 1987 by the Institute of Electrical and Electronics Engineers, Inc.
Author supplied keywords
Cite
CITATION STYLE
Bershad, B. N., Ching, D. T., Lazowska, E. D., Sanislo, J., & Schwartz, M. (1987). A Remote Procedure Call Facility for Interconnecting Heterogeneous Computer Systems. IEEE Transactions on Software Engineering, SE-13(8), 880–894. https://doi.org/10.1109/TSE.1987.233507
Register to see more suggestions
Mendeley helps you to discover research relevant for your work.