Presentation is loading. Please wait.

Presentation is loading. Please wait.

CS533 Concepts of Operating Systems Class 4 Remote Procedure Call.

Similar presentations


Presentation on theme: "CS533 Concepts of Operating Systems Class 4 Remote Procedure Call."— Presentation transcript:

1 CS533 Concepts of Operating Systems Class 4 Remote Procedure Call

2 CS533 - Concepts of Operating Systems 2 RPC Questions  What programming model does RPC enable? o What is the underlying model?  What are RPC stubs and what do they do? o How do they relate to adaptors discussed previously? o Is there any stack ripping involved? o How do they relate to the idea of wrapping I/O calls? o Why are they needed?  Can RPC pass parameters by reference?

3 CS533 - Concepts of Operating Systems 3 General Questions  What alternative approaches could they have taken to implement a shared memory programming abstraction over a distributed infrastructure? o And what are the relative advantages and disadvantages compared to RPC?

4 CS533 - Concepts of Operating Systems 4 LRPC Questions  Why use RPC for same machine communication?  What is a small-kernel OS, and why is it relevant to this discussion?  What overhead is involved in a straightforward implementation of RPC in the local case? o What are the basic work components How are they handled in RPC? How are they handled in LRPC?

5 CS533 - Concepts of Operating Systems 5 LRPC Questions  Why do LRPC procedure descriptors include the number of simultaneous calls permitted to the procedure by a client?  Why must the binding object be presented to the kernel on every call?  Why doesn’t the server handle the callers return address directly?  Why does the kernel maintain a stack of linkage records for each caller, instead of just one?

6 CS533 - Concepts of Operating Systems 6 LRPC Questions  Why isn’t a binding object required to validate the return call, just like the initial call?  In what way does LRPC depend on the calling conventions of Modula2+ ? o How does LRPC maintain safety?

7 CS533 - Concepts of Operating Systems 7 LRPC Questions  How does LRPC optimize VM context switching on a multiprocessor? o Why does this work? o Why is this approach potentially wasteful? o Why does it help to spin idle CPUs in commonly executed VM contexts?

8 CS533 - Concepts of Operating Systems 8 URPC Questions  Where does most of LRPC’s overhead come from?  How can the kernel be eliminated from the call path on multiprocessors with user-level threads?  To a thread URPC is synchronous, but to the thread library it is asynchronous … explain.  How does URPC affect throughput and latency?

9 CS533 - Concepts of Operating Systems 9 General Questions  Now we have scheduling, synchronization, and IPC outside the kernel o What should be in the kernel? o These papers predated scheduler activations Can you see the train of thought that led to scheduler activations?


Download ppt "CS533 Concepts of Operating Systems Class 4 Remote Procedure Call."

Similar presentations


Ads by Google