SUPRA-RPC: SUbprogram PaRAmeters in Remote Procedure Calls

One of the challenges in RPC research is to preserve the traditional call semantics despite the distribution and heterogeneity of the new environment. SUPRA-RPC overcomes a number of technical difficulties, stemming from scoping, side-effects and other sources, to support the passing of subprograms as RPC parameters. The SUPRA stub generator extracts information from not only remote entry interfaces, but from any scope potentially referenced by a subprogram passed as an RPC parameter. In addition to the usual call- and accept-stubs and the (un)marshalling routines, the generator constructs, out-of-scope access-, callback- and callback-handling- and other stubs and modified parameter subprograms. The SUPRA runtime support manages a runtime symbol table to keep track of referencing environments and out-of-scope objects, which it accesses via synchronous, 'under-the-covers' callbacks. The SUPRA process management supports servers with independent threads of control and manages (possibly nested) callbacks and pools of callback handler threads.<<ETX>>

[1]  Brian N. Bershad,et al.  A Remote Procedure Call Facility for Interconnecting Heterogeneous Computer Systems , 1987, IEEE Transactions on Software Engineering.

[2]  Alexander D. Stoyenko A general model and mechanisms for model-level heterogeneous RPC interoperability , 1990, Proceedings of the Second IEEE Symposium on Parallel and Distributed Processing 1990.

[3]  Andrew Birrell,et al.  Implementing remote procedure calls , 1984, TOCS.

[4]  T. Bloom,et al.  Communications in the Mercury system , 1988, [1988] Proceedings of the Twenty-First Annual Hawaii International Conference on System Sciences. Volume II: Software track.

[5]  David K. Gifford,et al.  Implementing Remote Evaluation , 1990, IEEE Trans. Software Eng..

[6]  Richard D. Schlichting,et al.  Facilitating Mixed Language Programming in Distrbuted Systems , 1987, IEEE Transactions on Software Engineering.

[7]  Phillip B. Gibbons A Stub Generator for Multilanguage RPC in Heterogeneous Environments , 1987, IEEE Transactions on Software Engineering.

[8]  Yi-Hsiu Wei,et al.  CONCERT: a high-level-language approach to heterogeneous distributed systems , 1989, [1989] Proceedings. The 9th International Conference on Distributed Computing Systems.

[9]  David K. Gifford,et al.  Remote pipes and procedures for efficient distributed communication , 1988, TOCS.

[10]  Maurice Herlihy,et al.  A Value Transmission Method for Abstract Data Types , 1982, TOPL.