| Lecture weeks | Lecture Content | Slides | Reading | Additional material and HW |
|---|---|---|---|---|
| 05/01 - 10/01 | Course logistics and Introduction | FCH introduction | OSTEP Ch4-6, Ch13-15 | HW 1: slide #9 kernel-6.1.4 |
| 12/01 - 17/01 | User contexts | slides: 1 2 | Ch8 (System Calls) Intel Architecture SDM3 Ch6.15 (IDT, Exceptions) kernel stack | HW 2: What will be the issue if a sysfs entry is not cleaned up during module unload? |
| 19/01 - 24/01 | Clone and Exec syscall handlers | slides: 1 | kernel/fork.c fs/exec.c | HW: What is the signal handling behavior across clone? (user code and OS code study) |
| 26/01 - 31/01 | Exec system call handle, Project topics | Project Allocation slides: 1 | fs/exec.c fs/clone.c | HW: Project scope and milestone |
| 02/02 - 07/02 | VM, Kernel Address Space | slides: 1 | OSTEP Ch12-24 Intel Architecture SDM3 Ch4 (Paging) | SRC: arch/x86/mm/fault.c, mm/memory.c https://docs.kernel.org/core-api/maple_tree.html |
| 09/02 - 14/02 | Kernel Address Space, PTI, Kernel threads | slides: 1 2 | OSTEP Ch12-24 Documentation/{x86/x86_64/mm.rst}{x86/pti.rst} | SRC: arch/x86/mm/fault.c, mm/memory.c Meltdown |
| 16/02 - 21/02 | I/O addressing, PCI devices | slides: 1 | LDD Ch10, Ch12, Ch15 | Kernel documentation: Documentation/PCI/pci.rst |