Lecture weeks |
Lecture Content |
Slides |
Reading |
Additional material and HW |
09/01 - 13/01
| Course logistics and Introduction |
fch
introduction |
OSTEP Ch4-6, Ch13-15 |
HW 1: slide #7
kernel-6.1.4
|
16/01 - 20/01
| System calls, Exceptions, OS mode execution |
contexts |
ULK Ch8 (System Calls)
Intel Architecture SDM3 Ch6.15 (IDT, Exceptions)
kernel stack |
Piazza[note@10]
SRC: {arch/x86/} kernel/traps.c,entry/common.c
|
23/01 - 27/01
| Kernel threads, SoftIRQs, Virtual Memory |
user-vm |
OSTEP Ch12-24
Intel Architecture SDM3 Ch4 (Paging)
|
SRC: arch/x86/mm/fault.c, mm/memory.c
|
30/01 - 03/02
| Virtual Memory, Kernel Address Space, PTI |
address-space |
Intel Architecture SDM3 Ch4 (Paging)
Documentation/x86/pti.rst
Documentation/x86/x86_64/mm.rst
|
Meltdown |
06/02 - 10/02
| File system overview |
fs |
OSTEP ch37-ch45
Documentation/filesystems/{vfs.rst, mount_api.rst}
|
slide #36 |
13/02 - 17/02
| Allinone: clone, exec |
clone-exec |
OSTEP ch4-5
kernel/fork.c fs/exec.c init/main.c
|
readelf |
20/02 - 24/02
| *** Midsem *** |
---------------- |
*** Midsem *** |
---------------- |
27/02 - 02/03
| Concurrency and Locking |
locking |
OSTEP ch26-32
|
rcu
Homework: slides #37, #41
|
06/03 - 10/03
| *** Midsem Break*** |
---------------- |
*** Midsem Break*** |
---------------- |
13/03 - 17/03
| Ext4 Filesystem, VFS Integration |
ext4fs |
ext4specs
Kernel documentation: Documentation/filesystems/ext4
|
SRC: fs/ext4/*
Homework: slides #13
|
20/03 - 24/03
| Ext4: Cache and journaling |
ext4fs |
ext4specs
Kernel documentation: Documentation/core-api/xarray, Documentation/filesystem/journaling
OSTEP Ch42
|
SRC: fs/ext4/*, fs/jbd2/*, fs/namei.c and functions mentioned in slides
|
27/03 - 31/03
| I/O and Addressing |
io-addresing |
LDD Ch9, Ch15
Kernel documentation: Documentation/core-api/dma-api-howto.rst Documentation/x86/iommu.rst
|
ddio-atc20
|
03/04 - 07/04
| PCI Devices, Quiz discussion |
pcidev |
LDD Ch12
Kernel documentation: Documentation/PCI/pci.rst
Source: E1000 device driver
|
MSI and MSI-X: Documentation/PCI/msi-howto.rst
|
10/04 - 14/04
| Scheduling |
slide |
ULK Ch4, Ch7
Kernel documentation: https://docs.kernel.org/x86/kernel-stacks.html
Source: kernel/sched/*
|
|
17/04 - 21/04
| Scheduling Policies |
slide |
OSTEP Ch7, Ch8
ULK Ch7
|
Source: kernel/sched/*
Kernel Documentation: Documentation/scheduler
|