The LECTURE will be on Tuesday/Thursday, 16:00-17:20, 240A McKenzie Hall. The lectures will be live on Zoom and recorded with a link posted in Canvas for each lecture.
The LAB will be on Wednesday and Thursday, 28 Klamath.
The following abbreviations are used in the table below:
Week | Date | Topic | Readings | Assignments |
1 |
September 26 |
Welcome and Introduction |
OSC: Chapter 1 TPCL: Chapter 1-3 PIC: Program Compilation, C Basics, Conditionals, Looping and Iteration, Arrays and Strings, Functions Tutorial: Heaps and ADTs in C |
Lab 0 |
September 27 and 28 |
LAB | Tools: Oracle VirtualBox , UTM , Git , Subversion , Valgrind , GDB | Lab 1 | |
September 28 |
OS Structure and System Calls |
OSC: Chapter 2 LMP: read(2) , write(2) , fork(2) , execve(2) , execl(3) , wait(2) , exit(2) PIC: Pointers , I/O , String Handling , File Access , Standard Libraries , Writing Larger Programs |
Project 1 | |
2 |
October 3 |
Processes |
OSC: Chapter 3 PIC: Process Control |
  |
October 4 and 5 |
LAB |   | Lab 2 | |
October 5 |
Interprocess Communication |
OSC: Chapter 3.4-3.6, 17.4.1-2 PIC: IPC , IPC:Message Queues , IPC:Shared Memory , RPC |
  | |
3 |
October 10 |
Threads |
OSC: Chapter 4 PIC: Threads , IPC: Interrupts and Signals |
  |
October 11 and 12 |
LAB |   | Lab 3 | |
October 12 |
Threads | OSC: Chapter 5 |   | |
4 |
October 16 |
Scheduling |
OSC: Chapter 6 PIC: IPC: Semaphores Papers: E.W. Dijkstra, " Solution of a Problem in Concurrent Programming Control," CACM, Vol. 8, Issue 9, September 1965. E.W. Dijkstra, " Cooperating Sequential Processes," The Origin of Concurrent Programming, pp. 65-138, Springer-Verlag, 2002. L. Lamport, " A New Solution of Dijkstra's Concurrent Programming Problem," CACM, Vol. 17, No. 8, August 1974. |
  |
October 17 and 18 |
LAB |   | Lab 4 | |
October 18 |
Concurrency and Synchronization |
OSC: Chapter 6/7 PIC: Thread Programming: Synchronization , Thread Programming Examples |
Project 2 | |
5 |
October 24 |
Multi-object synchronization (Deadlocks) |
OSC: Chapter 8 |
  |
October 25 and 26 |
LAB |   | Lab 5 | |
October 26 |
REVIEW | REVIEW | REVIEW Midterm preparation |
|
6 |
October 31 |
MIDTERM | MIDTERM | MIDTERM |
November 1 and 2 |
LAB |   | Lab 6 | |
November 2 |
Memory, address translation, paging |
OSC: Chapter 9 |
  | |
7 |
November 7 |
Memory, address translation, paging |
OSC: Chapter 9/10 |
Project 3 |
November 8 and 9 |
LAB |   | Lab 7 | |
November 9 |
Virtual memory |
OSC: Chapter 10 |
  | |
8 |
November 14 |
Virtual memory
File system - theory (Prof. Malony and Dewi will be at SC'23.) |
Papers: P. Denning, " The working set model for program behavior," Communications of the ACM. 11(5):323–333, 1968. OSC: Chapter 10, 13 |
  |
November 15 and 16 |
LAB (Dewi will be at SC'23.) |
  | Lab 8 | |
November 16 |
File system - theory
(Prof. Malony and Dewi will be at SC'23.) |
OSC: Chapter 13 |   | |
9 |
November 21 |
File systems implementation | OSC: Chapter 13 and 14 |   |
November 22 and 23 |
LAB |   | Lab 9 | |
November 23 |
I/O systems
|
OSC: Chapter 13 and 14 |   | |
10 |
November 28 |
I/O systems
|
OSC: Chapter 12 |   |
November 29 and 30 |
LAB |   | Lab 10 | |
November 30 |
Wrapup and Final Review | OSC: Chapter 12 |   | |
11 |
December 5 12:30-14:30 |
FINAL | FINAL | FINAL |