Operating Systems II
Spring 2007




Grading is based on:
In-class presentation(s) 15%
Semester project proposal, milestone* and final report 30%
Class projects and end of semester presentation / demonstration 45%
Class participation 10%

* The project milestone is a mid-semester report that will act as a skeleton for the final report. It should be similar to the final report with any preliminary results included, where appropriate. You should try to write your final report in the same format as the papers we will read and discuss in the course. The best papers will be selected as potential candidates for submission to conferences.

General Notes

Weekly Syllabus (subject to change)






January 16 Introduction
  • Discussion of course outline
January 18
"Systems Software Research is Irrelevant"
January 23
ULS / SafeX
  • Systems group research discussion
  • slides
January 25

  • Systems group research discussion
  • slides
Gabe Parmer

January 30
Quest / Cuckoo
Gary Wong
February 1
Programming the Garcia Robots

  • Systems group research discussion 
  • slides
Gerald Fry

February 6
Interrupt Management and Accounting
  • Systems group research discussion
  • slides
February 8
Linux Interrupts
Bovet and Cesati (Linux Kernel), Chapter 4 and Benvenuti (Linux Network Internals), Chapter 9 Raymond Sweha

February 13
Safety / Extensibility
  • slides
  • project proposals due in class
Michael Ocean
February 15
[2, 3]
Alex Smirnov

February 20

** Substitute Monday Class ** (NO CLASS)

February 22
Embedded Systems
Marianne Procopio

February 27
Resource Management
Jorge Londono
March 1
Linux Signals / IPC
Bovet and Cesati, Chapter 11
Smitha Patil

March 6
Network Services / System Extensibility
Aaron Hughes
March 8
Resource Management
Joshua Cowhig

March 13

** Spring Recess **

March 15

** Spring Recess **

March 20
Linux Synchronization and Scheduling
Bovet and Cesati, Chapters 5 and 7
Josh Avroch
March 22
Linux I/O Management

John Caldas

March 27
OS Structure: micro-kernels
Dan Berkovitch
March 29
Virtual Machines
Raymond Sweha

April 3
Virtual Machines
  • slides
Alex Smirnov
April 5

 ** No class **

April 10
  • Milestone reports due in class
  • slides
Michael Ocean
April 12
Network Services
Marianne Procopio

April 17
Resource Management
Jorge Londono
April 19
Hardware Support for OSes: Case Study of ARM, x86_64 Pacifica

Aaron Hughes

April 24
Joshua Cowhig
April 26
Linux Scheduling
Bovet and Cesati, Chapter 7
Josh Avroch

May 1

Final Project Presentations
Dan Berkovitch and Smitha Patil, Marianne Procopio, Raymond Sweha, Michael Ocean
May 3

Final Project Presentations
Josh Cowhig, Josh Avroch and John Caldas, Aaron Hughes

  1. "XFI: Software Guards for System Address Spaces", U. Erlingsson, M. Abadi, M. Vrable, M. Budiu and G. C. Necula, OSDI 2006
  2. "A Comparison of Software and Hardware Techniques for x86 Virtualization", K. Adams and O. Agesen, ASPLOS 2006
  3. "Virtualizing I/O Devices on VMware Workstation's Hosted Virtual Machine Monitor", J. Sugerman, G. Venkitachalam and B.H. Lim, USENIX 2001 Annual Technical Conference
  4. "Security in Embedded Systems: Design Challenges",  S. Ravi, A. Raghunathan, R. Kocher and S. Hattangady, ACM TECS 2004
  5. "Lottery Scheduling: Flexible Proportional-Share Resource Management", C. Waldspurger and W.E. Weihl, OSDI 1994
  6. "Lazy Receiver Processing (LRP): A Network Subsystem Architecture for Server Systems", P. Druschel and Gaurav Banga, OSDI 1996
  7. "Performance of Multithreaded Chip Multiprocessors and Implications for Operating System Design", A. Fedorova, M. Seltzer, C. Small and D. Nussbaum, USENIX 2005 Annual Technical Conference (See also Tech Report TR-17-04, Division of Engineering and Applied Sciences, Harvard University, August 2004)
  8. "On Micro-kernel Construction", J. Liedtke, SOSP 1995
  9. "Optimizing Network Virtualization in Xen", Aravind Menon, Alan L. Cox, Willy Zwaenepoel, USENIX 2006
  10. "Xen and the Art of Virtualization", B. Dragovic, K. Fraser, S. Hand, T. Harris, A. Ho, I. Pratt, A. Warfield, P. Barham and R. Neugebauer, SOSP 2003
  11. "Labels and Event Processes in the Asbestos Operating System", Petros Efstathopoulos, Maxwell Krohn, Steve VanDeBogart, Cliff Frey, David Ziegler, Eddie Kohler, David Mazi, Frans Kaashoek and Robert Morris, SOSP 2005
  12. "U-Net: a User-level Network Interface for Parallel and Distributed Computing", T. von Eicken, A. Basu, V. Buch, W. Vogels, SOSP 1995
  13. "Memory Resource Management in VMware ESX Server", C.A. Waldspurger, OSDI 2002
  14. "Cache-Fair Thread Scheduling for Multicore Processors", A. Fedorova, M. Seltzer and M. D. Smith, Technical Report, TR-17-06, Harvard University, 2006

Reading List

Books and Documentation Sources

Suggested List of Papers and Project Ideas

Last updated: May 2nd by Rich West.