For each lecture, we will post a small set of discussion questions based on the assigned papers. You're required to add a unique comment to the discussion of one of the questions by noon on the day of the class, to give time for everyone to read the blog entries before class. Note that the earlier you post, the easier it is to be unique. Please keep blog entries short: they can be anything that provides insight into the question being asked. We will automatically grant two mulligans during the quarter.
You should post your discussion comment to the paper discussions section of the class discussion board.
Optional additional papers:
- W. Wulf, E. Cohen, W. Corwin, A. Jones, R. Levin, C. Pierson, and F. Pollack. HYDRA: The Kernel of a Multiprocessor Operating System. Communications of the ACM 17(6), June 1974, pp. 337-344.
- Edsger W. Dijkstra. The Structure of the "THE" Multiprogramming System. Communications of the ACM 11(5), May 1968.
Optional additional papers:
- Michael D. Schroeder and Jerome H. Saltzer. A Hardware Architecture for Implementing Protection Rings. Communications of the ACM, volume 15, number 3, March 1927, pp. 157-170.
- Jeffrey Chase, Henry Levy, Michael Feeley, and Edward Lazowska. Sharing and Protection in a Single Address Space Operating System. ACM Trans. on Computer Systems, November 1994.
- Dawson R. Engler, M. Frans Kaashoek, and James O'Toole Jr. Exokernel: an operating system architecture for application-level resource management. In the Proceedings of the 15th ACM Symposium on Operating Systems Principles (SOSP '95), Copper Mountain Resort, Colorado, December 1995. (Related paper: Exterminate all OS abstractions)
- M. Frans Kaashoek, Dawson R. Engler, Gregory R. Ganger, Hector M. Briceno, Russell Hunt, David Mazières, Thomas Pinckney, Robert Grimm, John Jannotti, and Kenneth Mackenzie. Application Performance and Flexibility on Exokernel Systems. Proc. of the 16th ACM. Symposium on Operating Systems Principles, October 1997.
- B. Bershad, S. Savage, P. Pardyak, E. Sirer, M. Fiuczynski, D. Becker, C. Chambers, and S. Eggers. Extensibility, Safety and Performance in the SPIN Operating System. Proc. of the 15th ACM. Symp. on Operating Systems Principles, December 1995.
- Jonathan S. Shapiro, Jonathan M. Smith, and David J. Farber. EROS: a fast capability system. Proceedings of SOSP 1999.
- Petros Efstathopoulos, Maxwell Krohn, Steve VanDeBogart, Cliff Frey, David Ziegler, Eddie Kohler, David Mazières, Frans Kaashoek and Robert Morris. Labels and Event Processes in the Asbestos Operating System. Proceedings of SOSP 2005, October 2005. (slides)
- Galen Hunt, James Larus, Martín Abadi, Mark Aiken, Paul Barham, Manuel Fähndrich, Chris Hawblitzel, Orion Hodson, Steven Levi, Nick Murphy, Bjarne Steensgaard, David Tarditi, Ted Wobber, Brian Zill. An Overview of the Singularity Project. Microsoft Research Technical Report MSR-TR-2005-135, October 2005.
- Michael Spear, Tom Roeder, Orion Hodson, Galen Hunt, and Steven Levi. Solving the Starting Problem: Device Drivers as Self-Describing Artifacts. Proceedings of EuroSys2006. Leuven, Belgium, April 2006.
Optional additional papers:
- Vivek S. Pai, Peter Druschel, and Willy Zwaenepoel. Flash: An Efficient and Portable Web Server. Proceedings of the USENIX 1999 Annual Technical Conference. June 1999.
- Thomas Anderson, Brian Bershad, Edward Lazowska, and Henry Levy. Scheduler Activations: Effective Kernel Support for the User-Level management of Parallelism. ACM Trans. on Computer Systems 10(1), Feburary 1992, pp. 53-79.
- Donald E. Porter, Owen S. Hoffman, Christopher J. Rossbach, Alexander Benn, and Emmett Witchel. Operating System Transactions. SOSP 2009.
- Madanlal Musuvathi, Shaz Qadeer, Thomas Ball, Gerard Basler, Piramanayagam Arumuga Nainar, and Iulian Neamtiu. Finding and Reproducing Heisenbugs in Concurrent Programs. OSDI 2008.
- J.N. Gray, R.A. Lorie, G.R. Putzolu, and I.L. Traiger. Granularity of Locks and Degrees of Consistency in a Shared Database. Readings in Database Systems, 3rd Edition, Morgan Kaufmann Series in Data Management Systems.
- C. Waldspurger and W. Weihl. Lottery Scheduling: Flexible Proportional-Share Resource Management. Proceedings of the First USENIX Symposium on Operating System Design and Implementation, November 1994.
- Rob von Behren, Jeremy Condit, Feng Zhou, George C. Necula, Eric Brewer. Capriccio: Scalable Threads for Internet Services.. Proceedings of SOSP 2003.
- Stefan Savage, Michael Burrows, Greg Nelson, Patrick Sobalvarro, Thomas Anderson. Eraser: A Dynamic Data Race Detector for Multithreaded Programs. ACM Transactions on Computer Systems (TOCS), volume 15, issue 4, November 1997.
- John erickson, Madanlal Musuvathi, Sebastian Burckhardt, and Kirk Olynyk. Effective Data-Race Detection for the Kernel. OSDI 2010.
Optional additional papers:
- Marshall K. McKusick, William N. Joy, Samuel J. Leffler, and Robert S. Fabry. A Fast File System for UNIX. ACM Trans. on Computer Systems 2(3), August 1984, pp. 181-197.
- Jeremy Condit, Edmund B. Nightingale, Christopher Frost, Engin Ipek, Benjamin Lee, Doug Burger, and Derrick Coetzee. Better I/O Through Byte-Addressable, Persistent Memory. In Proceedings of SOSP 2009.
- Jinyuan Li, Maxwell Krohn, David Mazières, and Dennis Shasha. Secure untrusted data repository (SUNDR). In Proceedings of the 6th Symposium on Operating Systems Design and Implementation, San Francisco, CA, December 2004.
- John H. Howard, Michael L. Kazar, Sherri G. Menees, David A. Nichols, M. Stayanayanan, Robert N. Sidebotham, and Michael J. West. Scale and Performance in a Distributed File System. ACM Trans. on Computer Systems 6(1), February 1988, pp. 51-81.
- James J. Kistler and M. Satyanarayanan. Disconnected Operation in the Coda File System. ACM Transactions on Computer Systems (TOCS), volume 10, issue 1, February 1992.
- Michael N. Nelson, Brent B. Welch, and John K. Ousterhout. Caching in the Sprite Network File System. ACM Trans. on Computer Systems 6(1), February 1988, pp. 134-154.
- attacking LFS: seltzer vs. ousterhout
- J. Wilkes, R. Golding, C. Staelin, and T. Sullivan. The HP AutoRAID hierarchical storage system. Proceedindgs of SOSP 1995.
- Karin Petersen, Mike J. Spreitzer, Douglas B. Terry, Marvin M. Theimer, and Alan J. Demers. Flexible Update Propagation for Weakly Consistent Replication: Managing Update Conflicts in Bayou. Proceedings of SOSP 1997.
- John Kubiatowicz, David Bindel, Yan Chen, Steven Czerwinski, Patrick Eaton, Dennis Geels, Ramakrishna Gummadi, Sean Rhea, Hakim Weatherspoon, Westley Weimer, Chris Wells, and Ben Zhao. OceanStore: An Architecture for Global-Scale Persistent Storage. Proceedings of the Ninth international Conference on Architectural Support for Programming Languages and Operating Systems (ASPLOS 2000), November 2000.
- Margo I. Seltzer, Gregory R. Ganger, M. Kirk McKusick, Keith A. Smith, Craig A. N. Soules, Christopher A. Stein. Journaling versus Soft Updates: Asynchronous Meta-data Protection in File Systems. Proceedings of the 2000 USENIX Annual Technical Conference, June 2000.
- Douglas S. Santry, Michael J. Feeley, Norman C. Hutchinson, Alistair C. Veitch, Ross W. Carton, and Jacob Ofir. Deciding when to forget in the Elephant file system. Proceedings of the 17th ACM Symposium on Operating Systems Principles (SOSP '99).
Optional additional papers:
- Ashlesha Joshi, Samuel T. King, George W. Dunlap, and Peter M. Chen. Detecting Past and Present Intrusions through Vulnerability Specific Predicates. Proceedings of SOSP 2005.
- Andrew Whitaker, Marianne Shaw, and Steven D. Gribble. Scale and Performance in the Denali Isolation Kernel Proc. of the 5th Conf. on Operating Systems Design and Implementation, December 2002.
- Michael Vrable, Justin Ma, Jay Chen, David Moore, Erik Vandekieft, Alex C. Snoeren, Geoffrey M. Voelker, and Stefan Savage. Scalability, Fidelity, and Containment in the Potemkin Virtual Honeyfarm. Proceedings of SOSP 2005.
- Carl A. Waldspurger. Memory Resource Management in VMware ESX Server Proceedings of the 5th Symposium on Operating Systems Design and Implementation, Boston MA, December 2002.
- Ramón Cáceres, Casey Carter, Chandra Narayanaswami, and Mandayam Raghunath. Reincarnating PCs with Portable SoulPads. Proceedings of the Third International Conference on Mobile Systems, Applications, and Services (MobiSys '05), 2005.
- R. Chandra, N. Zeldovich, C. Sapuntzakis, and M. S. Lam. The Collective: A Cache-Based System Management Architecture. Proceedings of the Second Symposium on Networked Systems Design and Implementation (NSDI 2005), May 2005.
- H. Levy and P. Lipman. Virtual Memory Management in VAX/VMS. Computer 15(3), March 1982, pp. 35-41.
- R. Rashid, A.Tevanian, M. Young, D. Golub, R. Baron, D. Black, W. Bolosky, and J. Chew. Machine-Independent Virtual Memory Management for Paged Uniprocessor and Multiprocessor Architectures. Proc. of the 2nd International Conference on Architectural Support for Programming Languages and Operating Systems, October 1987, pp. 31-39.
- Kai Li and Paul Hudak. Memory Coherence in Shared Virtual Memory Systems. ACM Trans. on Computer Systems 7(4), November 1989, pp. 321-359.
- M. Satyanarayanan, H. Mashburn, P. Kumar, D. Steer, and J. Kistler. Lightweight Recoverable Virtual Memory. Proceedings of the 14th ACM Symposium on Operating Systems Principles, December 1993.
- K. Harty and D.Cheriton. Application-Controlled Physical Memory using External Page-Cache Management. Proc. of the 5th International Conference on Architectural Support for Programming Languages and Operating Systems, 1992, pp. 187-197.
- Daniel J. Scales and Kourosh Gharachorloo. Towards Transparent and Efficient Software Distributed Shared Memory. Proceedings of SOSP 1997.
Optional additional papers:
- Chandy and Lamport, Distributed Snapshots: Determining the Global States of a Distributed System, TOCS 1985.
- Baboaglu and Marzullo, Consistent Global States of Distributed Systems: Fundamental Concepts and Mechanisms, 1993.
- Elnozahy et al., A Survey of Rollback Recovery Protocols in Message Passing Systems, ACM Computing Surveys, 2002
- Fisher, Lynch, and Paterson, Impossibility of Distributed Consensus with One Faulty Process, Journal of the ACM, 1985.
- Fred B. Schneider, Implementing fault-tolerant services using the state machine approach: a tutorial, ACM Computing Surveys 22(4), December 1990.