CS 162: Operating Systems and System Programming

Calendar

Week Date # Lecture Readings/Discussions Homework Project Event
1 Sun 01/14            
1 Mon 01/15   Martin Luther King Jr. Day        
1 Tue 01/16 1 Intro to CS162: What is an operating system? [1up.pdf] [pptx] A&D Ch 1 Release Homework 0: Introduction / [Counting] / [From source] / [GDB] / [intro] / [Setup-Autograder] / [Setup-Docker] / [Setup-Editing] / [Setup-GitHub] / [Setup-Workspace] / [Submission] / [Tools] / [User]   Lecture Video: HERE
1 Wed 01/17            
1 Thu 01/18 2 Four Fundamental Concepts of Operating Systems [1up.pdf] [pptx] A&D Ch 2     Lecture Video: HERE
1 Fri 01/19     Discussion 0: C [0] [0_sol] [pdf] [pptx], x86 [Worksheet] [Solution]      
1 Sat 01/20            
2 Sun 01/21            
2 Mon 01/22         Release Project 0: Pregame [intro] / [Task-Debug] / [Task-Find] / [Task-Step] C Review Session [pdf] [pptx] [Slides] [Recording]
2 Tue 01/23 3 Abstractions 1: Threads and Processes [1up.pdf] [pptx] A&D Ch 4     Lecture Video: HERE
2 Wed 01/24       Due    
2 Thu 01/25 4 Abstractions 2: Process Management, Files, I/O [1up.pdf] [pptx] A&D Ch 3, Ch 4 Release Homework 1: List [intro] / [Iwords] / [pthread] / [pwords]   Lecture Video: HERE
2 Fri 01/26     Discussion 1: Operating Systems [1] [1_sol] [pdf] [pptx] [Worksheet] [Solution]     Early Drop Deadline
2 Sat 01/27           Group Formation Deadline
3 Sun 01/28            
3 Mon 01/29            
3 Tue 01/30 5 Abstractions 3: Files and I/O, Sockets, and IPC [1up.pdf] [pptx]     Due Lecture Video: HERE
3 Wed 01/31         Release Project 1: User Programs / [intro] / [Tasks-Argument] / [Tasks-Concept] / [Tasks-File] / [Tasks-Floating] / [Tasks-Process]  
3 Thu 02/01 6 Abstractions 4: Sockets and IPC (finished) [1up.pdf] [pptx]       Lecture Video: HERE
3 Fri 02/02     Discussion 2: Threads, I/O [2] [2_sol] [pdf] [pptx] [Worksheet] [Solution]      
3 Sat 02/03            
4 Sun 02/04            
4 Mon 02/05            
4 Tue 02/06 7 Synchronization 1: Concurrency, Mutual Exclusion, Lock Implementation, Atomic Instructions [1up.pdf] [pptx] A&D Ch 5 The Therac-25 Toyota Uncontroller Acceleration [reading]     Lecture Video: HERE
4 Wed 02/07       Due    
4 Thu 02/08 8 Synchronization 2: Lock Implementation, Atomic Instructions, Futex [1up.pdf] [pptx]   Release Homework 2: Shell / [Diectory] / [Foreground] / [Foreground-Background] / [Foreground-Foreground] / [intro] / [Path] / [Pipes] / [Program] / [Redirection] / [Signal] / [Signal-Example] / [Signal-Foreground] / [Signal-Overview] / [Signal-Process] / [Signal-Task]   Lecture Video: HERE
4 Fri 02/09     Discussion 3: Mutual Exclusion, Condition Variables [3] [3_sol] [pdf] [pptx] [Worksheet] [Solution]     Midterm 1 Conflict Request Form Due
4 Sat 02/10         Design Doc Deadline  
5 Sun 02/11            
5 Mon 02/12           Midterm 1 Review Session
5 Tue 02/13 9 Synchronization 3: Semaphores, Monitors and Readers/Writers [1up.pdf] [pptx]       Lecture Video: HERE
5 Wed 02/14            
5 Thu 02/15   No Lecture       Midterm 1 (8-10 PM)
5 Fri 02/16     No Discussion      
5 Sat 02/17            
6 Sun 02/18            
6 Mon 02/19   President’s Day        
6 Tue 02/20 10 Synchronization 4: Readers/Writers Scheduling Intro: Pintos Concurrency, FCFS [1up.pdf] [pptx] A&D Ch 7.4&7.6 Due   Lecture Video: HERE
6 Wed 02/21            
6 Thu 02/22 11 [Scheduling 1: Concepts and Classic Policies, Case Studies](http://public2.yuantsy.com/Test/CS162/Week6/2.22/11.pdf        
) [1up.pdf] [pptx] A&D Ch 7.4&7.6 Due   Lecture Video: HERE      
6 Fri 02/23     Discussion 4: Scheduling [4] [4_sol] [pdf] [pptx] [Worksheet] [Solution] Release Homework 3: HTTP / [Background] / [intro] / [Tasks-GET request] / [Tasks-Performance] / [Tasks-Proxy] / [Tasks-Servers] / [Tasks-Socket] (C version) (Rust version)    
6 Sat 02/24            
7 Sun 02/25            
7 Mon 02/26           Rust Crash Course [Recording]
7 Tue 02/27 12 Scheduling 2: Classic Policies (Con’t), Case Studies, Realtime, Starvation [1up.pdf] [pptx] [Recording] A&D Ch. 6 Mars Pathfinder Priority Inversion     Lecture Video: HERE
7 Wed 02/28         Code and Report Due  
7 Thu 02/29 13 Scheduling 3: Proportional Share Scheduling, Deadlock [1up.pdf] [pptx]     Release Project 2: Threads / [Deliverables-Code] / [Deliverables-Design] / [Deliverables-Evaluations] / [Deliverables-Grading] / [Deliverables-Report] / [Deliverables-Submission] / [intro] / [Plan] / [Tasks-Concept] / [Tasks-Efficient] / [Tasks-Strict] / [Tasks-Testing] / [Tasks-User threads] / [Tasks-User-Imple] / [Tasks-User-Pthread] Lecture Video: HERE
7 Fri 03/01     Discussion 5: Starvation [5] [5_sol] [pdf] [pptx] [Worksheet] [Solution]      
7 Sat 03/02            
8 Sun 03/03            
8 Mon 03/04            
8 Tue 03/05 14 Memory 1: Address Translation, Virtual Memory, Segments and Page Tables [1up.pdf] [pptx] A&D Ch 8 Due   Lecture Video: HERE
8 Wed 03/06       Release Homework 4: Memory / [Library-Intro] / [Library-Memory] / [Memory] / [sbrk-Additional] / [sbrk-Intro] / [sbrk-Pages] / [sbrk-Syscall]    
8 Thu 03/07 15 Memory 2: Paging (con’t), Caching and TLBs [1up.pdf] [pptx] A&D Ch 9     Lecture Video: HERE
8 Fri 03/08     Discussion 6: Paging, Caches [6] [6_sol] [pdf] [pptx] [Worksheet] [Solution]      
8 Sat 03/09         Design Doc Deadline  
9 Sun 03/10            
9 Mon 03/11           Midterm 2 Review Session [Slides] [pdf] [pptx]
9 Tue 03/12 16 Memory 3: Caching and TLBs (Con’t), Demand Paging [1up.pdf] [pptx] A&D Ch 10     Lecture Video: HERE
9 Wed 03/13            
9 Thu 03/14 No Lecure         Midterm 2 (8-10 PM)
9 Fri 03/15     No Discussion      
9 Sat 03/16            
10 Sun 03/17            
10 Mon 03/18            
10 Tue 03/19 17 Memory 4: Demand Paging Policies [1up.pdf] [pptx] A&D Ch 12     Lecture Video: HERE
10 Wed 03/20            
10 Thu 03/21 18 Memory 5: Demand Paging Policies (Finished) [1up.pdf] [pptx] A&D Ch 12 & 7.5     Lecture Video: HERE
10 Fri 03/22     Discussion 7: I/O [7] [7_sol] [pdf] [pptx] [Worksheet] [Solution]      
10 Sat 03/23            
11 Sun 03/24            
11 Mon 03/25   Spring Recess        
11 Tue 03/26   Spring Recess        
11 Wed 03/27   Spring Recess        
11 Thu 03/28   Spring Recess        
11 Fri 03/29     Spring Recess, Cesar Chavez Day      
11 Sat 03/30            
12 Sun 03/31            
12 Mon 04/01            
12 Tue 04/02 19 General I/O [1up.pdf] [pptx]       Lecture Video: HERE
12 Wed 04/03       Due    
12 Thu 04/04 20 Device Drivers, Storage Devices, Performance [1up.pdf] [pptx] Patterson Appendix D.4/D.5 on Queueing Theory Release HW5: Map Reduce / [Background-Code] / [Background-Development] / [Background-General] / [Background-MapReduce] / [Background-RPC] / [Conclusion] / [Example] / [Fault] / [intro] / [Job] / [Tasks] / [patterson_queue] (C version) (Rust version)   Lecture Video: HERE
12 Fri 04/05     Discussion 8: Queueing Theory, File Systems [8] [8_sol] [pdf] [pptx] [Worksheet] [Solution]   Code and Report Due  
12 Sat 04/06         Evals Due  
13 Sun 04/07         Release Project 3: File Systems / [Deliverables-Code] / [Deliverables-Design] / [Deliverables-Evalutions] / [Deliverables-Grading] / [Deliverables-Report] / [Deliverables-Submission] / [Extensible] / [intro] / [Plan] / [Subdirectories] / [Tasks-Buffer] / [Tasks-Concept] / [Tasks-Synchronization] / [Tasks-Testing]  
13 Mon 04/08            
13 Tue 04/09 21 Filesystems 1: Performance, Queuing Theory, Filesystem Design [1up.pdf] [pptx] A&D Ch 11 & 13 Fast File System     Lecture Video: HERE
13 Wed 04/10            
13 Thu 04/11 22 Filesystems 2: Filesystem Design (Con’t), Filesystem Case Studies, Buffering [1up.pdf] [pptx] A&D Ch 14 NFS     Lecture Video: HERE
13 Fri 04/12     Discussion 9: File Systems (continued), Reliability [9] [9_sol] [pdf] [pptx] [Worksheet] [Solution] RPC Lab Deadline / [intro] / [Issuing] / [KV] / [Protocal] / [RPC implementation] (Cversion) (Rust version)    
13 Sat 04/13            
14 Sun 04/14            
14 Mon 04/15         Design Doc Deadline  
14 Tue 04/16 23 Filesystems 3: File System Case Studies (Con’t), Buffer Cache, Reliability [1up.pdf] [pptx]       Lecture Video: HERE
14 Wed 04/17            
14 Thu 04/18 24 Distributed 1: Reliability, Transactions, Distributed Decision Making, 2PC [1up.pdf] [pptx] End-to-End Arguments in System Design Distributed Systems for Fun and Profit (Ch 1, 2, 4), Dist Sys: RPCThe Byzantine Generals Problem [dist-intro] [endtoend] [Original_Byzantine] [Reading-2]     Lecture Video: HERE
14 Fri 04/19     Discussion 10: Reliability, Distributed Systems [10] [10_sol] [pdf] [pptx] [Worksheet] [Solution] Checkpoint Deadline    
14 Sat 04/20            
15 Sun 04/21            
15 Mon 04/22            
15 Tue 04/23 25 Distributed 2: Distributed Decision Making (Con’t), RPC, and Distributed Storage [1up.pdf] [pptx] Van Jacobsen’s TCP paper,NFS filesystemChord Paper,Amazon Dynamo [amazon-dynamo-sosp2007] [chord_sigcomm] [dist-nfs] / [jacobson-congestion] Due   Lecture Video: HERE
15 Wed 04/24            
15 Thu 04/25   No Lecture       Midterm 3 (8-10 PM)
15 Fri 04/26     No Discussion      
15 Sat 04/27            
16 Sun 04/28            
16 Mon 04/29   RRR Week        
16 Tue 04/30 26 Special Topics Lecture:Trusted Execution, Distributed Storage, and the Global Data Plane. [1up.pdf] [pptx]       Lecture Video: HERE
16 Wed 05/01   RRR Week        
16 Thu 05/02   RRR Week     Code and Report Due  
16 Fri 05/03   RRR Week     Evals Due  
16 Sat 05/04            
17 Sun 05/05            
17 Mon 05/06   No Final     Pintos Fun  
17 Tue 05/07   No Final        
17 Wed 05/08   No Final        
17 Thu 05/09   No Final        
17 Fri 05/10   No Final        
17 Sat 05/11            

This site uses Just the Docs, a documentation theme for Jekyll.