all) A programming interface that allows one program to use the services of another program in a remote machine. The calling program sends a message and data to the remote program, which is executed, and results are passed back to the calling program.
There Are Many Interfaces
Sun developed the RPC concept as part of its Open Network Computing (ONC) architecture, and a similar type of RPC was used in The Open Group's DCE architecture, which was the model for Microsoft's DCOM. CORBA also provides this capability along with a comprehensive messaging environment designed to support multiple programming languages and platforms. Web services and service oriented architectures (SOAs) are another form of RPC. See remoting
, Web services
RPCs vs. CORBA
The concept may be the same (one program calls another to execute some service), but RPCs function more like a program calling a function in the same machine, only done remotely. RPCs also tend to be language and platform specific. CORBA provides a complete messaging environment that Object Request Broker (ORB) software manages at both ends of the communication.