Lecture Notes

Special software is required to use some of the files in this section: .c.

1 Introduction and O/S review (PDF)

syscall.c (C)

webserver.c (C)


I/O concurrency (PDF 1)

Event-driven programming (PDF 2)

events.c (C)

webclient.c (C)

webclient_libasync.c (C)

3 Event-driven programming (cont.) (PDF) arpc.c (C)
4 Network file system (PDF)
5 RPC transparency (PDF)
6 Crash recovery (PDF)
7 Logging (PDF)
8 Cache consistency and locking (PDF)
9 Memory consistency (PDF)
10 First project conferences
11 Memory consistency (cont.) (PDF)
12 Vector timestamps and version vectors (PDF)
13 Two-phase commit (PDF)
14 Paxos (PDF)
15 Viewstamped replication (PDF)
16 Harp (PDF)
17 Second project conferences
18 Frangipani (PDF)
19 Scalable lookup (PDF)
20 Wide-area storage
21 Hacking day (no class)
22 Project demonstrations
23 Content distribution
24 Distributed computing