Messages, RPC, Clients, and Servers

4/5/00


Click here to start


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