Download presentation
Presentation is loading. Please wait.
1
CS533 Concepts of Operating Systems Class 9 User-Level Remote Procedure Call
2
CS533 - Concepts of Operating Systems 2 Questions Where does most of LRPC’s overhead come from? How can the kernel be eliminated from the call path on SMMPs with user-level threads? To a thread URPC is synchronous, but to the thread library it is asynchronous … explain. Why do kernel thread switches have long term cache and TLB effects that user thread switches do not?
3
CS533 - Concepts of Operating Systems 3 Questions In what ways does URPC do “cooperative scheduling” across address space boundaries? In what ways does URPC do load balancing? How does URPC affect throughput and latency? Why might URPC scale better than kernel-based RPC? How can a client’s CPU be hijacked by a server? o How could you solve this problem?
4
CS533 - Concepts of Operating Systems 4 Questions Now we have scheduling, synchronization, and IPC outside the kernel o What should be IN the kernel? o Note, these papers predated scheduler activations Second half of CS533 examines the evolution of kernel structuring approaches
5
CS533 - Concepts of Operating Systems 5 Reminder Midterm exam on Thursday Closed book Questions on race conditions, deadlock, monitors, RCU, manual and automatic stack management, user- level threads, scheduler activations, RPC vs LRPC vs URPC
6
CS533 - Concepts of Operating Systems 6 What have we learned so far? Multi-threaded programming primitives Race conditions and deadlock problems Monitors Scalable synchronization on modern CPUs Event-based programming instead of multi-threading Manual vs automatic stack management Cooperative scheduling (task management) Kernel support for user-level threads RPC and various optimizations (LRPC & URPC)
Similar presentations
© 2025 SlidePlayer.com. Inc.
All rights reserved.