Academic calendar
Date Lecture Preparation
9/6 Lec 1: Introduction and lab overview
Notes
[Frangipani]
[NFS]
9/13 Lec 2: Programming tools:
Threads and RPCs
Notes
Lab1 due: 9/16
[C#threads]
[RPC]
Questions
9/20 Lec 3: Consistency I
Sequential consistency
Notes
[Lamport:Consistency]
[Li:DSM]
Questions
9/27 Lec 4: Consistency II
Eventual consistency Notes
Lab2 due: 9/30
[Bayou]
[COPS:SOSP11]

Questions
10/4 Lec 5: (Multi-object consistency): All-or-nothing Atomicity
Crash recovery and logging
Notes
[Gray:SysR]
[Cedar]
Questions
10/11
Lec 6: (Multi-object consistency): Concurrency control
Notes
Lab3 due: 10/14
[Franklin97]
[Snapshot]
[TxCache] (optional)
Questions
10/18
MidTerm quiz (open-book, open-notes)
[fa2010]
[fa2009]
10/25 Lec 7: Fault Tolerance:
Two-phase commit
Notes-1,Notes-2
Lab4 due: 10/28
read 9.6 of [SK-book]
[Percolator:OSDI12]
Questions
11/1 Hurricane Sandy
No class
11/8 Lec 8: Fault Tolerance III:
Consensus
Replicated state machines
Notes
[Paxos]
[Spanner:OSDI12]
Questions
11/15 Lec 9: Parallel computation models I:
MapReduce,Dryad

Notes Lab5 due: 11/11
[MapReduce] [Dryad]
This video on Dryad is instructive
Questions
11/22
No class. Happy Thanksgiving!
11/29 Lec 10: Parallel computation models II:
DSM, Piccolo
Notes Piccolo Presentation
[Treadmarks]
[Piccolo]

Questions
12/6 Lec 11: Security
Byzantine tolerance
Notes
[PBFT]
Questions
12/13 Lec 13: Project Demo
12/20 Final term quiz