CS 162: Operating Systems and System Programming
THIS WEBSITE IS CURRENTLY UNDER CONSTRUCTION FOR SPRING 2025. All content and dates are subject to change.
Instructors: Natacha Crooks, Matei Zaharia
Lecture: TuTh 12:30 - 1:59 PM PT in VLSB 2050
Zoom: TBD
Schedule
Week | Date | # | Lecture | Readings/Discussions | Homework | Project | Event |
---|---|---|---|---|---|---|---|
1 | Sun 01/19 | ||||||
Mon 01/20 | |||||||
Tue 01/21 | 1 | What is an operating system? | Release Homework 0: Introduction | ||||
Wed 01/22 | |||||||
Thu 01/23 | 2 | Protection: Processes and Kernels | |||||
Fri 01/24 | Discussion 0 | ||||||
Sat 01/25 | |||||||
2 | Sun 01/26 | ||||||
Mon 01/27 | |||||||
Tue 01/28 | 3 | Protection: Processes (cont'd) | Release Project 0: Introduction to Pintos | ||||
Wed 01/29 | |||||||
Thu 01/30 | 4 | Systems programming: Processes and IO | HW0 Due | ||||
Fri 01/31 | Discussion 1 | Release Homework 1: Lists | Early Drop Deadline | ||||
Sat 02/01 | |||||||
3 | Sun 02/02 | ||||||
Mon 02/03 | |||||||
Tue 02/04 | 5 | Systems programming: Files, OS Library, Threads | |||||
Wed 02/05 | |||||||
Thu 02/06 | 6 | Synchronization 1: Concurrency and Mutual Exclusion | |||||
Fri 02/07 | Discussion 2 | ||||||
Sat 02/08 | Group Registration Form Due | ||||||
4 | Sun 02/09 | Project 0 Due | |||||
Mon 02/10 | Release Project 1: User Programs | ||||||
Tue 02/11 | 7 | Synchronization 2: Concurrency (Con't), Lock Implementation, Atomic Instructions | |||||
Wed 02/12 | |||||||
Thu 02/13 | 8 | Synchronization 3: Locks, Semaphores, Monitors | |||||
Fri 02/14 | Discussion 3 | ||||||
Sat 02/15 | |||||||
5 | Sun 02/16 | HW1 Due | |||||
Mon 02/17 | Release Homework 2: Shell | ||||||
Tue 02/18 | 9 | Synchronization 4: Semaphores (Con't), Monitors and Readers/Writers | |||||
Wed 02/19 | |||||||
Thu 02/20 | No lecture | Midterm 1 (Class time) | |||||
Fri 02/21 | No discussion | Design Document Due | |||||
Sat 02/22 | |||||||
6 | Sun 02/23 | ||||||
Mon 02/24 | |||||||
Tue 02/25 | 10 | Scheduling 1: Core Concepts and Classic Policies | |||||
Wed 02/26 | |||||||
Thu 02/27 | 11 | Scheduling 2 (cont'd) | |||||
Fri 02/28 | Discussion 4 | ||||||
Sat 03/01 | |||||||
7 | Sun 03/02 | ||||||
Mon 03/03 | |||||||
Tue 03/04 | 12 | Scheduling 3 (cont'd) | |||||
Wed 03/05 | |||||||
Thu 03/06 | 13 | Scheduling 4: Deadlock | |||||
Fri 03/07 | Discussion 5 | ||||||
Sat 03/08 | |||||||
8 | Sun 03/09 | HW2 Due | |||||
Mon 03/10 | Release Homework 3: HTTP >(C version) (Rust version) | Code and Final Report Due | Rust Review Session | ||||
Tue 03/11 | 14 | Virtual Memory 1 | Release Project 2: Threads | ||||
Wed 03/12 | |||||||
Thu 03/13 | 15 | Virtual Memory 2 (cont'd) | |||||
Fri 03/14 | Discussion 6 | ||||||
Sat 03/15 | |||||||
9 | Sun 03/16 | ||||||
Mon 03/17 | |||||||
Tue 03/18 | 16 | Virtual Memory 3: Demand Paging | |||||
Wed 03/19 | |||||||
Thu 03/20 | No lecture | Midterm 2 (Class time) | |||||
Fri 03/21 | No discussion | Design Document Due | |||||
Sat 03/22 | |||||||
10 | Sun 03/23 | HW3 Due | |||||
Mon 03/24 | Spring Break | Release Homework 4: Memory | |||||
Tue 03/25 | Spring Break | ||||||
Wed 03/26 | Spring Break | ||||||
Thu 03/27 | Spring Break | ||||||
Fri 03/28 | Spring Break | ||||||
Sat 03/29 | |||||||
11 | Sun 03/30 | ||||||
Mon 03/31 | |||||||
Tue 04/01 | 17 | General IO | A&D Ch 11 & 13 | ||||
Wed 04/02 | |||||||
Thu 04/03 | 18 | File Systems 1 | |||||
Fri 04/04 | Discussion 7 | ||||||
Sat 04/05 | |||||||
12 | Sun 04/06 | HW4 Due | |||||
Mon 04/07 | Release HW5: Map Reduce (C version) (Rust version) | ||||||
Tue 04/08 | 19 | File Systems 2 (cont'd) | A&D Ch 14 NFS | ||||
Wed 04/09 | Code and Final Report Due | ||||||
Thu 04/10 | 20 | File Systems 3 (cont'd) | Release Project 3: File Systems | ||||
Fri 04/11 | Discussion 8 | ||||||
Sat 04/12 | |||||||
13 | Sun 04/13 | ||||||
Mon 04/14 | RPC Lab Deadline (C version) (Rust version) | ||||||
Tue 04/15 | 21 | Reliability and Distributed Systems | |||||
Wed 04/16 | |||||||
Thu 04/17 | 22 | Distributed Systems (Distributed File Systems, The Internet) | |||||
Fri 04/18 | Discussion 9 | ||||||
Sat 04/19 | |||||||
14 | Sun 04/20 | Design Document Due | |||||
Mon 04/21 | |||||||
Tue 04/22 | 23 | Distributed Systems (Distributed Data Processing) | |||||
Wed 04/23 | Checkpoint Deadline | ||||||
Thu 04/24 | 24 | Distributed Systems (Coordination - Atomic Commit) | |||||
Fri 04/25 | Discussion 10 | ||||||
Sat 04/26 | |||||||
15 | Sun 04/27 | ||||||
Mon 04/28 | |||||||
Tue 04/29 | 25 | Distributed Systems (Coordination - Consensus) | HW5 Due | ||||
Wed 04/30 | |||||||
Thu 05/01 | No lecture | Midterm 3 (Class time) | |||||
Fri 05/02 | No discussion | ||||||
Sat 05/03 | |||||||
16 | Sun 05/04 | ||||||
Mon 05/05 | RRR Week | ||||||
Tue 05/06 | RRR Week | ||||||
Wed 05/07 | RRR Week | Code and Final Report Due | |||||
Thu 05/08 | RRR Week | ||||||
Fri 05/09 | RRR Week | ||||||
Sat 05/10 | |||||||
17 | Sun 05/11 | ||||||
Mon 05/12 | NO FINAL | ||||||
Tue 05/13 | |||||||
Wed 05/14 | |||||||
Thu 05/15 | |||||||
Fri 05/16 | |||||||
Sat 05/17 |
Discussion and Office Hours
Our calendar has been moved to the Calendar page.