CS 162: Operating Systems and Systems Programming
Instructor: John Kubiatowicz
Lecture: TuTh 12:30 - 2:00 PM PT in VLSB 2050
Zoom: https://berkeley.zoom.us/j/91374369068?pwd=N0d5aUZoZVFMck1rQnhnY25xOHBMdz09
Schedule
Week | Date | # | Lecture | Readings/Discussions | Homework | Project | Event |
---|---|---|---|---|---|---|---|
1 | Sun 01/15 | ||||||
Mon 01/16 | Martin Luther King Jr. Day | ||||||
Tue 01/17 | 1 | Intro to CS162: What is an operating system? [1up.pdf] [pptx] | A&D Ch 1 | Release HW0: Introduction | Lecture Video: HERE | ||
Wed 01/18 | |||||||
Thu 01/19 | 2 | Four Fundamental Concepts of Operating Systems [1up.pdf] [pptx] | A&D Ch 2 | Lecture Video: HERE | |||
Fri 01/20 | Discussion 0: C, x86 [Worksheet] [Solutions] [Walkthrough] | ||||||
Sat 01/21 | |||||||
2 | Sun 01/22 | ||||||
Mon 01/23 | Release Project 0: Pregame | C Review Session (4:30-6:00 PM) | |||||
Tue 01/24 | 3 | Processes, System Calls, and Fork [1up.pdf] [pptx] | A&D Ch 4 | Lecture Video: HERE | |||
Wed 01/25 | Due | ||||||
Thu 01/26 | 4 | Fork (Con't), Introduction to I/O [1up.pdf] [pptx] | A&D Ch 3 | Release Homework 1: List | Lecture Video: HERE | ||
Fri 01/27 | Discussion 1: Fundamentals, Processes, Pintos Lists [Worksheet] [Solution] [Walkthrough] | Early Drop Deadline | |||||
Sat 01/28 | Group Formation Deadline | ||||||
3 | Sun 01/29 | ||||||
Mon 01/30 | |||||||
Tue 01/31 | 5 | Sockets and IPC (Finished), Concurrency (Processes and Threads) | Due | ||||
Wed 02/01 | Release Project 1: User Programs | ||||||
Thu 02/02 | 6 | Synchronization 1: Concurrency and Mutual Exclusion | A&D Ch 5.1-5.3 Medical Devices: The Therac-25 | ||||
Fri 02/03 | Discussion 2: Threads, I/O | ||||||
Sat 02/04 | |||||||
4 | Sun 02/05 | ||||||
Mon 02/06 | |||||||
Tue 02/07 | 7 | Synchronization 2: Concurrency (Con't), Lock Implementation, Atomic Instructions | Mars Pathfinder Priority Inversion Toyota Uncontroller Acceleration | ||||
Wed 02/08 | Due | ||||||
Thu 02/09 | 8 | Synchronization 3: Locks, Semaphores, Monitors | Release Homework 2: Shell | ||||
Fri 02/10 | Discussion 3: Mutual Exclusion, Condition Variables | Design Doc Due | |||||
Sat 02/11 | |||||||
5 | Sun 02/12 | ||||||
Mon 02/13 | |||||||
Tue 02/14 | 9 | Synchronization 4: Semaphores (Con't), Monitors and Readers/Writers | |||||
Wed 02/15 | |||||||
Thu 02/16 | No Lecture | Midterm 1 (7-9 PM) | |||||
Fri 02/17 | No Discussion | ||||||
Sat 02/18 | |||||||
6 | Sun 02/19 | ||||||
Mon 02/20 | President's Day | ||||||
Tue 02/21 | 10 | Scheduling 1: Concepts and Classic Policies | A&D Ch 7.1-7.2 | ||||
Wed 02/22 | |||||||
Thu 02/23 | 11 | Scheduling 2: Scheduling Case Studies, Realtime Scheduling, Forward Progress | A&D Ch 7.4&7.6 | Due | |||
Fri 02/24 | Discussion 4: Scheduling | Release Homework 3: HTTP | |||||
Sat 02/25 | |||||||
7 | Sun 02/26 | ||||||
Mon 02/27 | |||||||
Tue 02/28 | 12 | Scheduling 3: Starvation (Finished), Deadlock | A&D Ch 6 | Code and Report Due | |||
Wed 03/01 | Release Project 2: Threads | ||||||
Thu 03/02 | 13 | Memory 1: Address Translation, Virtual Memory | A&D Ch 8 | ||||
Fri 03/03 | Discussion 5: Starvation | ||||||
Sat 03/04 | |||||||
8 | Sun 03/05 | ||||||
Mon 03/06 | |||||||
Tue 03/07 | 14 | Memory 2: Virtual Memory (Con't), Caching and TLBs | Due | ||||
Wed 03/08 | Release Homework 4: Memory | ||||||
Thu 03/09 | 15 | Memory 3: Caching and TLBs (Con't), Demand Paging | A&D Ch 9 | ||||
Fri 03/10 | Discussion 6: Paging, Caches | Design Doc Due | |||||
Sat 03/11 | |||||||
9 | Sun 03/12 | ||||||
Mon 03/13 | |||||||
Tue 03/14 | 16 | Memory 4: Demand Paging Policies | A&D Ch 10 | ||||
Wed 03/15 | Midterm 2 (8-10 PM) | ||||||
Thu 03/16 | 17 | General I/O, Storage Devices | A&D Ch 12 | ||||
Fri 03/17 | No Discussion | ||||||
Sat 03/18 | |||||||
10 | Sun 03/19 | ||||||
Mon 03/20 | |||||||
Tue 03/21 | 18 | General I/O (Con't), Storage Devices, Performance | A&D Ch 12 & 7.5 | ||||
Wed 03/22 | |||||||
Thu 03/23 | 19 | Filesystems 1: Performance (Cont'), Queueing Theory, Filesystem Design | A&D Ch 11 & 13 Fast File System | ||||
Fri 03/24 | Discussion 7: I/O | ||||||
Sat 03/25 | |||||||
11 | Sun 03/26 | ||||||
Mon 03/27 | Spring Recess | ||||||
Tue 03/28 | Spring Recess | ||||||
Wed 03/29 | Spring Recess | ||||||
Thu 03/30 | Spring Recess | ||||||
Fri 03/31 | Spring Recess, Cesar Chavez Day | Code and Report Due | |||||
Sat 04/01 | Release Project 3: File System | ||||||
12 | Sun 04/02 | ||||||
Mon 04/03 | Due | ||||||
Tue 04/04 | 20 | Filesystems 2: Filesystem Design (Con't), Filesystem Case Studies | Release Homework 5: Map Reduce | ||||
Wed 04/05 | |||||||
Thu 04/06 | 21 | Filesystems 3: Filesystem Case Studies (Con't), Buffering, Reliability, Transactions | A&D Ch 14 NFS | ||||
Fri 04/07 | Discussion 8: File Systems, Queueing Theory | ||||||
Sat 04/08 | |||||||
13 | Sun 04/09 | ||||||
Mon 04/10 | Design Doc Due | ||||||
Tue 04/11 | 22 | Transactions (Con't), End-to-End Arguments, Distributed Decision Making | End-to-End Arguments in System Design | ||||
Wed 04/12 | |||||||
Thu 04/13 | 23 | Distributed Decision Making (Con't), Networking and TCP/IP | Distributed Systems for Fun and Profit (Ch 1, 2, 4), Dist Sys: RPC The Byzantine Generals Problem | RPC Lab Deadline | |||
Fri 04/14 | Discussion 9: Reliability | ||||||
Sat 04/15 | |||||||
14 | Sun 04/16 | ||||||
Mon 04/17 | |||||||
Tue 04/18 | 24 | Networking and TCP/IP (Con't), RPC, Distributed File Systems | Van Jacobsen's TCP paper, NFS filesystem | ||||
Wed 04/19 | |||||||
Thu 04/20 | 25 | Distributed Storage, NFS and AFS, Key Value Stores | Chord Paper, Amazon Dynamo | ||||
Fri 04/21 | Discussion 10: Distributed Systems | Checkpoint Deadline | |||||
Sat 04/22 | |||||||
15 | Sun 04/23 | ||||||
Mon 04/24 | |||||||
Tue 04/25 | 26 | Special Topics Lecture: (e.g.: Key-Value Stores (con't), Chord, DataCapsules, and Quantum Computing) | Due | ||||
Wed 04/26 | |||||||
Thu 04/27 | No Lecture | Midterm 3 (7-9 PM) | |||||
Fri 04/28 | No Discussion | ||||||
Sat 04/29 | |||||||
16 | Sun 04/30 | ||||||
Mon 05/01 | RRR Week | ||||||
Tue 05/02 | RRR Week | ||||||
Wed 05/03 | RRR Week | Code and Report Due | |||||
Thu 05/04 | RRR Week | Pintos Fun | |||||
Fri 05/05 | RRR Week | ||||||
Sat 05/06 | |||||||
17 | Sun 05/07 | ||||||
Mon 05/08 | No Final | ||||||
Tue 05/09 | No Final | ||||||
Wed 05/10 | No Final | ||||||
Thu 05/11 | No Final | ||||||
Fri 05/12 | No Final | ||||||
Sat 05/13 | |||||||
18 | Sun 05/14 |
Discussion and Office Hours
This calendar includes cancellation and rescheduling.