COS-518 Syllabus

Schedule

This schedule and syllabus is subject to change. Assigned papers marked with an asterisk ('*') are optional, but will be presented in class by a selected student. All other assigned papers must be read by all students.

Date Topics Notes / Assignments Readings Presenter
Part 1: Introduction, system programming, and server design
Thu 09/17 Course overview and introduction, system design
Read only 2.1 (pages 7-10) of "Worse is Better" Hints for Computer System Design, Worse is Better  
Tue 09/22 Managing concurrency - processes and threads
type.c, minish.c, redirsh.c, pipesh.c Scheduler Activations  
Thu 09/24 Managing concurrency - events
libasync, Tame, Livelock Avoidance * Wauck
Tue 09/29 Scalable and fast servers
Socket lecture notes [ppt, pdf] Flash, OKWS * Wang
Part 2: Consistency and fault-tolerance
Thu 10/01 Ordering, time, and versioning
Lamport clocks, Tra * Gopalan
Tue 10/06 Primary-backup and two-phase commit
Assignment 1 due - caching web proxy Porcupine, Harp * Wang
Thu 10/08 Consensus and coordination
Optional - alternative Paxos description; Viewstamped replication. Paxos, Eventual Consistency, Chubby * Shue
Tue 10/13 SOSP Conference
No class  
Thu 10/15 Strong consistency against adversaries
Assignment 2 due Friday - fork and pthreads PBFT, SUNDR * Feldman
Tue 10/20 Weakening consistency
Only pages 1-32 of PBcast. ISIS ToCS paper. ISIS, Bimodal multicast *  
Wed 10/21 Eventual consistency
Class 11-12:30. Bayou, Dynamo * Harrison
Part 3: Peer-to-peer systems
Tue 10/27 Distributed Hash Tables
Initial STOC paper on consistent hashing. For some practical challenges with deploying DHTs, see NTR. Assignment 3 due - select Chord, Bamboo * Shue
Thu 10/29 Content distribution
CoralCDN, BitTyrant *  
Tue 11/03 Fall recess
No class.  
Thu 11/05 Fall recess
No class  
Tue 11/10 Multicast and overlays
Assignment 4 - libasync and/or Tame(r) SplitStream, i3 * Harrison
Thu 11/12 Privacy and anonymity
Tor, Freenet * Arye
Part 4: Advanced and distributed file systems
Tue 11/17 Advanced file systems
Project proposal due XFS, Rethink the Sync * Ali
Thu 11/19 Distributed file systems
Zebra, Google FS * Arye
Tue 11/24 Semi-structured key-value stores
BigTable, PNUTS * Ilvento
Thu 11/26 Thanksgiving recess
No class  
Part 5: Data processing and cloud computing
Tue 12/01 MapReduce
MapReduce on EC2, Google Cluster Design  
Thu 12/03 Parallel DBs
MapReduce vs SQL, DryadLINQ * Hung
Tue 12/08 System monitoring and recovery
Pip, MicroReboot * Gopalan
Part 6: Virtualization and OS
Thu 12/10 Virtual Memory
UVM, ESX * Ali
Tue 12/15 Virtual Machines
Optional - x86 HW/SW virtualization Xen, Fido * Hung
Thu 12/17 Advanced kernels and distributed OS
Exokernel, Plan9 * Wauck
Tue 01/12 Final project reports due
Dean's date  

Last updated: Tue Dec 15 20:46:16 -0500 2009