CIS307: Homework 6: Using Remote Procedure Calls
This homework is given April 23 and it is due April 29 by 5pm.
It is a continuation of homeworks 3, 4, and 5. As in homework 5
communication between clients
and server is taking place across networks. But now instead of using sockets
directly, we use Remote Procedure Calls (RPCs),
which isolates us from the transport
mechanism being used.
Support material on the use of RPC is provided in class, in the lab,
and in the
notes.
You should also read the hints for this homework.
Your code for the homework will be divided into three files:
- A file sm.x containing the specification for the RPC interface.
This file, and an example of its use, is discussed in the hints for
this homework. [In fact, this file is given to you in the hints.]
- A file sm_svc_proc.c containing your implementation for the
STORE_READ and STORE_UPDATE functions (at the server). When the server
image is available, it should be launched from the unix shell without
any parameters.
- A file sm.c containing the code for the client, consisting of our
old hmw_main and rand_proc code. When the client image is available,
it should be launched from the unix shell with two parameters: the
name of the computer on which the server is running, and a seed for the
random number generator.
Apart for the fact that we are using remote procedure calls,
your program should behave as in homework 5.
ingargiola@cis.temple.edu