Quickwords - Vocabulary used in this article


DC Communication

page 1 | 2 | 3

remote procedural call

Pizza deliveries are a wonderful thing. Anyone can pick up the telephone, make a call to his local pizza parlour, and request the chefs to make a super-sized pizza with extra cheese and mouth-watering pepperoni. They drive to his house and deliver the fresh-from-the-oven results in thirty minutes.

This pizza delivery isn't unlike a remote procedural call, which extends the concept of distributed computing by allowing one computer to execute a command in another computer. Typically, applications commonly make a "procedural call" to a function — a software routine that performs an operation — in the same application. With remote procedural calls, the application can invoke a function in another application's process, whether it be on the same computer or another computer across the network — provided it has the appropriate middleware to support it.

What makes a remote procedural call special is that it hides the process from the application, making it a cinch for it to invoke function calls on other computers. Similarly, pizza delivery orders across the phone don't require the customer to have an intricate knowledge of the phone lines. He simply needs to pick up the phone and talk as he would talk if he were in the pizza parlor.

A remote procedural call is made when the client application makes a call to what appears to be a local function, according to (Burghart). The middleware takes the call's parameters, packages, and sends them to another computer, where it is unpacked and executed by the real function. When it is complete, the function's return values are packed up and sent back to the original computer and its client application. See figure 1.

Remote Procedural Call

Fig. 1: Remote Procedural Call

Remote procedural calls are used in brand-name architectures like Microsoft Distributed Component Object Model (DCOM), the Open Group's Distributed Computing Environment (DCE), and Common Object Request Broker Architecture (CORBA). CORBA provides RPC capabilities in its architecture as well as a messenging environment which supports different programming languages and platforms, according to (The Computer Language Co., Inc), whereas RPC in other architectures support only one platform and language.

continued...

Previous Next View Printer-Friendly Version

©2000 Team DC (Thinkquest Team C007645). Hosted by ThinkQuest.