CS614: Linux Kernel Programming
Lecture Schedule


  
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