ScheduleΒΆ

The schedule will change as the course progresses, in part based on student interests. If you are particularly interested in some topic not covered here, send an email to the instructor.

Monday Tuesday Wednesday Thursday Friday
Aug 21 Aug 22 Aug 23
LEC 1: Course Introduction
TUT 1-1: Lab Setup, Tools and Debugging
Read: textbook-1
Read: at&t_asm GDB tutorial-1 tutorial-2 cheat-sheet
Aug 24 Aug 25
Aug 28
LEC 2: Booting
TUT 1-2: Booting Process and Calling Convention
Aug 29 Aug 30
LEC 3: Memory and Address Space
TUT 1-2: Booting Process and Calling Convention
Read: x86 Address Translation
Read: textbook-1 textbook-2 textbook-3
Aug 31 Sep 1
Sep 4
Labor Day
Sep 5 Sep 6
TUT 0: Systems Programming for the Labs
Sep 7 Sep 8
Sep 11
LEC 4: Virtual Memory I
Read: x86 Address Translation
Read: Page Table
Sep 12 Sep 13
LEC 5: Virtual Memory II
TUT 2-1: Physical Memory Management
Read: textbook-1 textbook-2 textbook-3 textbook-4 textbook-5 textbook-6
Sep 14 Sep 15
Sep 18
LEC 6: JOS Memory Management
TUT 2-2: Virtual Memory Management
Read: textbook-1 textbook-2 textbook-3
Sep 19 Sep 20
Quiz 1: Booting to JOS Memory Management (LEC 2-6 and TUT 1-1 to 2-2)
Sep 21 Sep 22
Sep 25
LEC 7: User/Kernel Context Switch
Sep 26 Sep 27
LEC 8: Handling Interrupt and Exceptions
Sep 28 Sep 29
Oct 2
Quiz 1 Review
TUT 3-1: User Environment and Trap Dispatching
Oct 3 Oct 4
LEC 9: System Calls and Page Faults
Read: textbook-1 textbook-2 textbook-3
Oct 5 Oct 6
Oct 9
LEC 9: System Calls and Page Faults
TUT 3-2: Handling Interrupt and Exceptions
Oct 10 Oct 11
LEC 10: Multi-threading and Data Races (Guest Lecture by Zelun Kong)
Read: textbook-1 textbook-2
Oct 12 Oct 13
Oct 16
LEC 11: Locks and Synchronization
Oct 17 Oct 18
Quiz 2: User/Kernel Context Switch to Multi-threading and Data Races (LEC 7-10 and TUT 3-1 to 3-2)
Oct 19 Oct 20
Oct 23
LEC 12: Concurrency Bugs and Deadlock
Read: textbook-1
Oct 24 Oct 25
Quiz 2 Review
LEC 12: Concurrency Bugs and Deadlock
Oct 26 Oct 27
Oct 30
LEC 13: Scheduling
TUT 4-1: Multiprocessor Support and Cooperative Multitasking
Read: textbook-1
Oct 31 Nov 1
LEC 14: Disks and Device I/O
TUT 4-1: Multiprocessor Support and Cooperative Multitasking
TUT 4-2: Copy-on-Write Fork, Preemptive Multitasking, and Inter-Process Communication
Read: textbook-1 textbook-2
Nov 2 Nov 3
Nov 6
LEC 15: File Systems
Read: textbook-1 textbook-2
Nov 7 Nov 8
TUT 4-2: Copy-on-Write Fork, Preemptive Multitasking, and Inter-Process Communication
Nov 9 Nov 10
Nov 13
LEC 16: Crash Consistency
TUT 4-2: Copy-on-Write Fork, Preemptive Multitasking, and Inter-Process Communication
Read: textbook-1 textbook-2
Nov 14 Nov 15
Quiz 3: Locks and Synchronization to File Systems (LEC 11-15 and TUT 4-1 to 4-2)
Nov 16 Nov 17
Nov 20
Fall Break
Nov 21
Fall Break
Nov 22
Fall Break
Nov 23
Thanksgiving Holiday
Nov 24
Thanksgiving Holiday
Nov 27
LEC 17: Virtual Machines
Read: textbook-1
Nov 28 Nov 29
Quiz 3 Review
Nov 30 Dec 1
Dec 4
LEC 18: OS Security & Final Course Review Read: textbook-1 textbook-2
Dec 5 Dec 6
Class Cancelled (No Class)
Dec 7
Last Day of Classes
Dec 8
Dec 11
Final Exam Period (No Exam)
Dec 12
Final Exam Period (No Exam)
Dec 13
Final Exam Period (No Exam)
Dec 14
Final Exam Period (No Exam)
Dec 15
Final Exam Period (No Exam)