Week | Topic | |
01 | Introduction (Microkernels and seL4) | |
02 |
Caches
(What every OS designer must know) Papers: [Clark, Emer 1985], [Uhlig et al. 1994], [Wiggins 2003] Book: [Schimmel 1994] |
|
03 | OS Execution Models | |
Why Threads are a Bad Idea (for most purposes) | ||
Why Events are a Bad Idea
(for high-concurrency servers) Papers: [von Behren et al., 2003] |
||
04 |
Virtual Machines
[Barham et al., 2003], [Waldspurger, 2002], [Adams and Agesen, 2006] |
|
05 |
Microkernel Design
(with focus on seL4) Papers:[Liedtke 1993], [Liedtke 1995], [Blackham & Heiser 2012], [Blackham et al. 2012] |
|
06 |
Performance Evaluation [Fleming and Wallace, 1986] [Gernot's Benchmarking Crimes] |
|
07 |
Device Drivers [Swift et al. 2003] [Leslie et al. 2005] |
|
Automatic Device Driver Synthesis with Termite |
||
08 |
SMP and Locking [Anderson, 1990] |
|
09 |
Security |
|
10 |
Multiprocessors 2 Drawbridge [Porter et al., 2011] |
|
11 |
Scalability and Linux Internals |
|
12 | Local Systems Research |
References in square brackets are recommended readings from the papers list.
All lecture notes are available in two formats: