A tentative set of papers that we will cover is listed below, though
the list may change based on the interests of the class.
For each paper, one student is assigned to present the
paper. The presentation should present a technical overview of the
paper and argue the merits and flaws of the paper.
Each paper presentation should be 25-30 minutes, including discussion. There will
be 2 paper presentations per class. All students are required to read the papers
before they are presented.
Presentations will be graded based on apparent
understanding of the material in the paper, presentation style, and
entertainment value. All students will be expected to make paper
presentations. To avoid being assigned a paper that you do not want
to present, you should volunteer early for your paper selection.
If a paper has not yet been assigned two student presenters and you
would like to volunteer to present it, just send email to the
instructor to sign up.
In creating your presentations, you are free to use any additional
material beyond the content of the paper. For instance, you can
reference other papers that may discuss similar work. However, the
presentation should represent your own viewpoint, and you should
clearly cite any other work you use for your presentations. Failure
to make proper citations will adversely affect your presentation
The class will be held in an Electronic Classroom and we strongly
encourage you to use the presentation equipment available there. You
may also use other presentation media, but you will be responsible for
providing your own A/V equipment.
January 21 - NO CLASS, please read:
January 28 - Principles of Computer Systems
- Roy Levin and David D. Redell, "An Evaluation of the Ninth SOSP Submissions", Operating Systems Review, 17(3), July 1983, pp. 35-40.
- Alan Jay Smith, "The Task of the Referee", IEEE Computer, 23(4), April 1990, pp. 65-71.
- How to Give a Talk by Margo Seltzer.
- How to
Have a Bad Career in Academia by Dave Patterson.
February 4 - Virtualization
- Butler W. Lampson, "Hints for Computer System Design", Operating Systems Review, 15(5), October 1983, pp. 33-48.
- Jerome H. Saltzer, David P. Reed, and David D. Clark, "End-To-End Arguments in System Design", ACM Transactions on Computer Systems, 2(4), pp. 277-288, November 1984.
February 11 - Advanced Virtualization
- Edouard Bugnion, Scott Devine, and Mendel Rosenblum, "Disco: Running Commodity Operating Systems on Scalable Multiprocessors", Proceedings of the 16th ACM Symposium on Operating Systems Principles (SOSP), October 1997, Saint Malo, France.
- Christoffer Dall and Jason Nieh, "KVM/ARM: The Design and Implementation of the Linux ARM Hypervisor", Proceedings of the 19th International Conference on Architectural Support for Programming Languages and Operating Systems (ASPLOS), Salt Lake City, UT, March 2014. (Ke)
February 18 - Containers
- Carl Waldspurger, "Memory Resource Management in VMware ESX Server", Proceedings of the 5th Symposium on Operating Systems Design and Implementation (OSDI), Boston, MA, December 2002. (Maria)
- Muli Ben-Yehuda, Michael D. Day, Zvi Dubitzky, Michael Factor, Nadav Har'El, Abel Gordon, Anthony Liguori, Orit Wasserman, and Ben-Ami Yassour, "The Turtles Project: Design and Implementation of Nested Virtualization", Proceedings of the 9th USENIX Symposium on Operating Systems Design and Implementation (OSDI), Vancouver, BC, Canada, October 2010. (Alex)
February 25 - TBD
- Steven Osman, Dinesh Subhraveti, Gong Su, and Jason Nieh, "The Design and Implementation of Zap: A System for Migrating Computing Environments", Proceedings of the 5th Symposium on Operating Systems Design and Implementation (OSDI), Boston, MA, December 2002. (Daniel)
- Shaya Potter and Jason Nieh, "Apiary: Easy-to-use Desktop Application Fault Containment on Commodity Operating Systems", Proceedings of the 2010 USENIX Annual Technical Conference (USENIX 2010), Boston, MA, June 2010. (Haomin)
March 3 - TBD
March 10 - Class canceled by the University
March 17 - Spring break, no class
March 24 - Class canceled by the University
March 31 - Midterm project presentations
April 7 - Advanced Containers
April 14 - Verified Operating Systems
- Jeremy Andrus, Christoffer Dall, Alex Van't Hof, Oren Laadan, and Jason Nieh, "Cells: A Virtual Mobile Smartphone Architecture", Proceedings of the 23rd Symposium on Operating Systems Principles (SOSP), Cascais, Portugal, October 2011. (Yuxuan)
- Sergei Arnautov, Bohdan Trach, Franz Gregor, Thomas Knauth, Andre Martin, Christian Priebe, Joshua Lind, Divya Muthukumaran, Dan O'Keeffe, Mark L Stillwell, David Goltzsche, Dave Eyers, Rudiger Kapitza, Peter Pietzuch, and Christof Fetzer, "SCONE: Secure Linux Containers with Intel SGX", Proceedings of the 12th USENIX Symposium on Operating Systems Design and Implementation (OSDI), Savannah, GA, November 2016. (Rylie)
April 21 - Google Infrastructure
- Gerwin Klein, Kevin Elphinstone, Gernot Heiser, June Andronick, David Cock, Philip Derrin, Dhammika Elkaduwe, Kai Engelhardt, Rafal Kolanski, Michael Norrish, Thomas Sewell, Harvey Tuch, and Simon Winwood, "seL4: Formal Verification of an OS Kernel", Proceedings of the 22nd Symposium on Operating Systems Principles (SOSP), Big Sky, MT, October 2009. (Osama)
- Ronghui Gu, Zhong Shao, Hao Chen, Xiongnan (Newman) Wu, Jieung Kim, Vilhelm Sjoberg, and David Costanzo, "CertiKOS: An Extensible Architecture for Building Certified Concurrent OS Kernels", Proceedings of the 12th Symposium on Operating Systems Design and Implementation (OSDI), Savannah, GA, November 2016. (Zach)
April 28 - Final project presentations
- Jeffrey Dean and Sanjay Ghemawat, "MapReduce: Simplified Data Processing on Large Clusters", Proceedings of the 6th Symposium on Operating Systems Design and Implementation (OSDI 2004), San Francisco, CA, December 2004. (Reshma)
- James C. Corbett, Jeffrey Dean, Michael Epstein, Andrew Fikes, Christopher Frost, JJ Furman, Sanjay Ghemawat, Andrey Gubarev, Christopher Heiser, Peter Hochschild, Wilson Hsieh, Sebastian Kanthak, Eugene Kogan, Hongyi Li, Alexander Lloyd, Sergey Melnik, David Mwaura, David Nagle, Sean Quinlan, Rajesh Rao, Lindsay Rolig, Yasushi Saito, Michal Szymaniak, Christopher Taylor, Ruth Wang, and Dale Woodford, "Spanner: Google's Globally-Distributed Database", Proceedings of the 10th Symposium on Operating Systems Design and Implementation (OSDI 2012), Hollywood, CA, October 2012. (Kundan)