OSF DCE Application Development Guide--Core Components
Chapter 11. Developing a Simple RPC
Application
This chapter first explains how to write an interface definition in the DCE RPC Interface
Definition Language (IDL) and illustrates the basic features of IDL. As an example, we
present an interface definition for greet, a very simple application that prints greetings
from a client and a remote server. The remainder of the chapter describes how to
develop, build, and run the greet client and server programs.
The
describes how to develop a DCE application by using many of the features of DCE. The
following chapters use the term remote procedure call application (RPC application)to
mean essentially the same thing, except in this context an RPC application concentrates
on the features of the RPC technology, glossing over other DCE issues such as security,
threads, and messaging. Since the RPC mechanism is the root technology for all DCE
applications, the basic development approach is the same.
11.1 The Remote Procedure Call Model
A remote procedure call executes a procedure located in a separate address space from
the calling code. The RPC model is a well-tested, industry-wide framework for
distributing applications. The RPC model is derived from the programming model of
local procedure calls and takes advantage of the fact that every procedure contains a
procedure declaration. The procedure declaration defines the interface between the
calling code and the called procedure. The procedure declaration defines the call syntax
and parameters of the procedure. All calls to a procedure must conform to the procedure
declaration.
Applications that use remote procedure calls look and behave much like local
applications. However, an RPC application is divided into two parts: a server, which
offers one or more sets of remote procedures, and a client, which makes remote
procedure calls to RPC servers. A server and its clients generally reside on separate
systems and communicate over a network. RPC applications depend on the RPC runtime
to control network communications for them. The DCE RPC runtime supports additional
tasks, such as finding servers for clients and managing servers.
124245 Tandem Computers Incorporated 11−1










