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