(Distributed) Computer Operating Systems

Spring 2022


Please note that this is a tentative schedule. This will be updated on a best-effort basis and content in this page is not a substitute for attending lectures. Students are _required_ to attend classes and exams will cover topics discussed in the class.

Important Dates

Assignment 1 Release date: 2/3,Due date: 2/17
Project Proposal 2/10
Assignment 2 Release date: 2/18; Due date: 3/11
Assignment 3 Release date: 3/14, Due date: 4/1
Final Presentation 19/4
Midterm 2/24
Final Exam 4/21
Final Project Due: 4/26

Schedule

Dates Topic Reading Announcements
Tu 1/11 Introduction Chap 1
Th 1/13 Architectures Chap 2
Tu 1/18 Processes and Threads Chap 3
Th 1/20 Distributed Scheduling
Tu 1/25 Virtualization
Th 1/27 OS Virtiualiztion
Tu 2/1 RPC Communication
Th 2/3 Migration
Tu 2/8 Message-oriented communication Chap 5
Th 2/10 Distributed Naming
Tu 2/15 Synchronization, Logical Clocks Chap 6
Th 2/17 Vector Clocks, Leader Election
Tu 2/22 Mutual Exclusion
Th 2/24 Midterm Exam
Tu 3/1 Zookeeper
Th 3/3 Distribtued Transactions Chap 7
Tu 3/8 Spring Recess
Th 3/10 Spring Recess
Tu 3/15 Consistency
Th 3/17 Fault Tolerance
Tu 3/22 Paxos / BFT
Th 3/24 Raft
Tu 3/29 Distributed File systems
Th 3/31 DFS implementations
Tu 4/5 Distributed middleware
Th 4/7 Cloud computing
Tu 4/12 Distributed Security
Th 4/14 Blockchain
Tu 4/19 Final project presentation
Th 4/21 Final Exam
Tu 4/26 Final Projects due

Reading List

Virtualization

  1. Understanding Full Virtualization, Paravirtualization and Hardware Assist.2007
  2. Barham et. al. Xen and the art of Virtualization. SOSP 2003
  3. Clark et. al. Live migration of virtual machines. NSDI 2005