The design of a stub generator for heterogeneous RPC systems
Abstract
A stub generator is a tool used to support distributed applications communicating via remote procedure calls. A stub generator generates stubs, which serve as local agents acting on behalf of remote callers and callees. We describe a novel stub generator design which supports RPCs between programs written in different programming languages and running on machines of different architectures. The stub generation includes determining procedure interface compatibility and determining whether format representation conversion is possible. Both direct and indirect conversion schemes are supported. Stubs are constructed from language-dependent templates that capture the essential syntactic and semantic structure of data types in the supported language. The stub generator itself is language independent. Marshaling and unmarshaling of scalar and composite data types, including recursive or pointer-based data types, are supported. © 1991.