Home Teaching Research Publications

 Summer 2017: Advanced Operating Systems (LV 7680)   -- Master Information Science

News

Time Schedule

Beginning of lectures 19-Apr-2017
WAMOS 2017 Workshop (tentative) 25-Aug-2017

Slides

ChapterTitleRecommended reading
0Prefix
by Robert Kaiser, HSRM
1Introduction (Microkernels and L4)
by Gernot Heiser, UNSW
(slides) (handout)
[Hansen 1970]
[Engler et al. 1995]
2 OS execution models
by Kevin Elphinstone, UNSW
(slides) (handout)
Why threads are a bad idea (for most purposes)
by John Ousterhout, Sun Microsystems Labs
(slides) (handout)
Why events are a bad idea (for high-concurrency servers)
by Rob von Behren et al, UCB
(slides) (handout)
[von Behren et al., 2003]
3Virtual Machines
by Gernot Heiser, UNSW
(slides) (handout)
[Barham et al., 2003]
[Waldspurger, 2002]
[Dall and Nieh, 2013]
4SMP and Locking
by Kevin Elphinstone, UNSW
(slides) (handout)
[Anderson, 1990]
[Clements et al., 2013]
5Performance Evaluation
by Gernot Heiser, UNSW
(slides) (handout)
[Fleming and Wallace, 1986]
[Gernot's Benchmarking Crimes]
6Caches (What every OS designer must know)
by Gernot Heiser, UNSW
(slides) (handout)
[Clark, Emer 1985]
[Uhlig et al. 1994]
[Wiggins 2003]
[Schimmel 1994]
7Linux
by Peter Chubb, DATA61
(slides)
[McKenney, 2004]
[McKenney et al., 2002]
[Ritchie and Thompson, 1974]
8Real-Time Systems
by Stefan Patters and Gernot Heiser, UNSW
(slides) (handout)
[Liu, 2000]
9Microkernel Design (with focus on seL4)
by Gernot Heiser, UNSW
(slides) (handout)
[Liedtke 1993]
[Liedtke 1995]
[Blackham et al. 2012]
[Elphinstone & Heiser 2013]
10OS Security
by Toby Murray and Gernot Heiser, UNSW
(slides) (handout)
[Miller et al, 2003]
[Watson et al, 2010]
11Multiprocessors
by Ihor Kuz, UNSW
(slides)
[Porter et al. 2011]
12Trustworthy Systems
by Gernot Heiser, UNSW
(slides) (handout)
[Klein et al. 2014]
[Amani et al, 2016]
[Shen and Elphinstone, 2015]

Project Milestones: using seL4

  M0 -  Familiarisation
  M1 -  A timer driver
  M2 -  Memory Manager
  M3 -  A pager
  M6 -  Demand paging
  M8 -  ELF loading

Project Milestones: using Fiasco.oc

  M0 -  Familiarisation

Links

  1 -  AOS wiki
  5 -  seL4 manual

Literature

  1 - Tanenbaum, A. S.: Modern Operating Systems, 2nd Ed., Prentice-Hall, 2001 (Engl. Originalausgabe)
  2 - Stallings: Operating Systems: Internals and Design Principles, Prentice Hall, 2004
  3 - Curt Schimmel: UNIX Systems for Modern Architectures, Addison Wesley, 1994

Note: The above are standard textbooks on operating systems. There aren't really any books covering the contents of this lecture. Note however, that each set of lecture slides is accompanied by a selection of recommended papers to read.