[comp.protocols.tcp-ip] RPC application programming

xxbja@csduts1.lerc.nasa.gov (Betty Jo Armstead) (02/14/91)

In John Corbin's excellent book "The Art of Distributed Applications:
Programming Techniques for Remote Procedure Calls", he hints that one
can write multithreaded RPC (tcp not udp) applications.  Perhaps I am
dense, but I don't quite understand how this is done.  In particular
I am interested in providing an RPC type server on MVS, using
IBM's RPC software.  If anyone has any sample applications showing
how one handles multithreads/streams using RPC please send me mail
   xxbja@csduts1.lerc.nasa.gov
I will be glad to summarize any responses.  By the way any other
references on RPC programming would also be appreciated.
--
Betty Jo Armstead              SVERDRUP Technology Inc.
21000 Brookpark Rd.Ms 142-2
Nasa Lewis Research Center
Cleveland Ohio 44135           From: xxbja@csduts1.lerc.nasa.gov

fkittred@bbn.com (Fletcher Kittredge) (02/14/91)

In article <1991Feb13.160045.7947@eagle.lerc.nasa.gov> xxbja@csduts1.lerc.nasa.gov (Betty Jo Armstead) writes:
>In John Corbin's excellent book "The Art of Distributed Applications:
>Programming Techniques for Remote Procedure Calls", he hints that one
>can write multithreaded RPC (tcp not udp) applications.  Perhaps I am
>dense, but I don't quite understand how this is done.  In particular
>I am interested in providing an RPC type server on MVS, using
>IBM's RPC software.  If anyone has any sample applications showing
>how one handles multithreads/streams using RPC please send me mail
>   xxbja@csduts1.lerc.nasa.gov

TCP is a protocol definition; support for multi-threaded programs is a
operating system service (if the support is worthwhile).  There is nothing
about TCP that makes it possible to write multi-threaded applications.  So
your sense of the world is correct.

In the distributed applications domain, multi-threaded programs are seen
as a beneficial tool.  The advantage of multi-threaded programs is that
they offer a method of taking inherently asynchroneous processes and allow
programmers to treat functional sections as synchroneous.  Most current
distributed bases provide thread support: mach, amoeba, OSF DCE, etc.
Older distributed bases such as Sun O/S or VMS are planning to add (real)
thread services in the future.

>I will be glad to summarize any responses.  By the way any other
>references on RPC programming would also be appreciated.

There are so many I don't know where to begin.  "Distributed Systems"
Ed. Sape Mullender, 1989, ACM Press is a start.  All of the OSF DEC,
Mach, ISIS, Camelot and Amoeba documentation is relevant.  Of course,
you need the Sun O/S documentation and XDR/RPC sources (available on
uunet.u.net).

>--
>Betty Jo Armstead              SVERDRUP Technology Inc.
>21000 Brookpark Rd.Ms 142-2
>Nasa Lewis Research Center
>Cleveland Ohio 44135           From: xxbja@csduts1.lerc.nasa.gov


Fletcher Kittredge
Platforms and Tools Group, BBN Software Products
10 Fawcett Street,  Cambridge, MA. 02138
617-873-3465  /  fkittred@bbn.com  /  fkittred@das.harvard.edu