Distributed Computer Systems Engineering
Lecture Notes
LEC # |
TOPICS |
HANDOUTS |
1 |
Introduction and O/S review (PDF) |
syscall.c (C) webserver.c (C) |
2 |
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 |
|
Labs
Laboratory Assignments
LABS |
TOPICS |
SUPPORTING FILES |
0 |
Getting started (PDF) |
|
1 |
Lock server (PDF) |
lab-1.zip (ZIP) (The ZIP file contains: 5 .c files, 2 .h files, 1 Makefile, and 1 .x file.) |
2 |
Basic file server (PDF) |
lab-2.zip (ZIP) (The ZIP file contains: 5 .c files, 3 .h files, 2 .x files, 1 .pl file, and 1 Makefile.) |
3 |
File server: Reading, writing, and sharing files (PDF) |
lab-3.zip (ZIP) (The ZIP file contains: test-lab-3.pl.) |
4 |
MKDIR, REMOVE, and locking (PDF) |
lab-4.zip (ZIP) (The ZIP file contains: 6 .c files, 3 .h files, 2 .x files, 1 Makefile, and 1 .pl file.) |
5 |
Cache consistency (PDF) |
|
Exams
Previous Exams
Quiz 1 (PDF)
Quiz 2 (PDF)