Due: 12/10/1999 CS 429: HW # 4 Points 50 .../hw4.html
You can work in groups of size <= 4
Modify Version ONE of sort program.
Implement asynchronous or non-blocking Client.
When server is done, server 'calls back' client with results.
Notes
Write sortClientHomework4.c
Write sortServerHomework4.c
Client
Register the 'call back' routine. Use registerrpc
Set timeout = 0 before invoking server. Use clnt_control to do it.
Invoke server.
Invoke svc_run()... just wait since nothing better to do.
In real-world, parent would invoke svc_run while child can be busy with other computations. But, for now, let us keep to one process.
Eventually server will call the call back routine.
Server
When client calls do NOT send any result in response since client is not waiting there.
Do server computation.
Since sorting does not take much time, use sleep(someSeconds) to simulate a longer computation.
Invoke client's call back routine and send results.
All done.
Use hydra.cs.bgsu.edu cc compiler. Allegro is flaky (same account as Allegro).
Run the program several times.
Create a readme4 file... Enable read access to me.
Hand-in a printed copy of readme4 file, program listing, input, output.
Resources: Today's class discussion and rpc resource on web.
RPC directory...
Sample rpc program readme file
Sample rpc program interface spec for sort program (sort.x)
Sample rpc program client
Sample rpc program server