Table of Contents
Messages, RPC, Clients, and Servers
Preview
IPC with Message Send/Receive
Issues for Message Send/Receive
Client/Server Request/Response
Clients and Servers as Interacting Processes
Example: Time Service
Example: Time Service Using Messages
Messaging and Protection
Reconsidering the Kernel Interface
Server-Structured Systems and Microkernels
Illustration of a Server-Structured System
Some Microkernel History
Beyond Messaging: Remote Procedure Call
Example: Time Service Using RPC
Remote Procedure Call Illustrated
Some Points About RPC
Naming Message/RPC Endpoints: Ports
Advantages of Ports
Some Issues for Port Communication
Examples of Ports in Real Systems
The Notification Problem
Multithreading: Pros and Cons
General Alternative: Event-Driven Systems
Example: Unix Select Syscall
Event Notification with Upcalls
Access Control 101
The Access Matrix
An Access Matrix
Slicing the Access Matrix
Access Control Lists
Capabilities
Security vs. Extensibility
Retrospective on IPC
Summary
|
Author: Jeff Chase
Home Page: http://www.cs.duke.edu/~chase/cps110
|