Recent Changes - Search:

Instructor

  • who: Michael Swift
  • where: Room 7369
  • when: Thurs. 1:30-2:30
  • email: swift 'at' cs.wisc.edu

TA

  • who: Ceyhun Alp
  • where: 1306
  • when: Wednesday 1:15-2:15
  • email: e.ceyhun.alp 'at' gmail.com

Lecture:

  • when: Tues./Thur. 11:00 -- 12:15
  • where: Computer Sciences 1325
  • list: compsci736-1-s16 'at' lists.wisc.edu

HomePage

Resources

edit SideBar

ReadingList

Structure and Abstractions

Historical Perspective

  1. Edsger W. Dijkstra. The Structure of the "THE" Multiprogramming System. Communications of the ACM 11(5), May 1968.
  2. Per Brinch Hansen. The Nucleus of a Multiprogramming System. Communications of the ACM 13(4), April 1970.
  3. Dennis M. Ritchie and Ken Thompson. The UNIX Timesharing System. Communications of the ACM 17(7), July 1974.

Modern OS Structures

  1. 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.
  2. Dawson R. Engler and M. Frans Kaashoek. Exterminate All Operating System Abstractions. Fifth Workshop on Hot Topics in Operating Systems (HotOS-V), Orcas Island, Washington, May, 1995
  3. Andrew Baumann, et al. The multikernel: a new OS architecture for scalable multicore systems Proceedings of the ACM SIGOPS 22nd symposium on Operating systems principles, Pages 29-44.

Virtualization

  1. E. Bugnion, S. Devine, K. Govil, and M. Rosenblum. Disco: running commodity operating systems on scalable multiprocessors. ACM Trans. Comput. Syst., 15(4):412-447, 1997.
  2. Carl Waldspurger. Memory Resource Management in VMware ESX Server in Proceedings of the 5th Symposium on Operating Systems Design and Implementation, 2002.

Memory Management

  1. Peter J. Denning. The working set model for program behavior. In Communications of the ACM 11(5), May 1968.Pages 323 - 333.
  2. Michael Young, Avadis Tevanian, Jr., Richard Rashid, David Golub, Jeffrey Eppinger, Jonathan Chew, William Bolosky, David Black, and Robert Baron. The Duality of Memory and Communication in the Implementation of a Multiprocessor Operating System. In 11th Symp. on Operating Systems Principles, pages 63--76, 1987.
  3. J. Navarro, S. Iyer, P. Druschel, and A. Cox. Practical, transparent operating system support for superpages. In OSDI '02: Proceedings of the 5th symposium on Operating systems design and implementation, 2002. ACM.

Extra Material

  1. Large pages
  2. H. M. Levy and P. H. Lipman. Virtual memory management in the VAX/VMS operating system. Computer, 15(3):35--41, March 1982.
  3. Steven M. Hand. Self-paging in the Nemesis operating system In Proceedings of the third symposium on Operating systems design and implementation, pages 73-86, 1999.

I/O

  1. Simon Peter, Jialin Li, Irene Zhang, Dan R. K. Ports, Doug Woos, Arvind Krishnamurthy, Thomas Anderson, Timothy Roscoe. Arrakis: The Operating System is the Control Plane. In 11th USENIX Symposium on Operating Systems Design and Implementation (OSDI), Broomfield, CO, USA, October 2014.

Communication

  1. Andrew D. Birrell and Bruce Jay Nelson. Implementing Remote Procedure Calls. ACM Trans. on Computer Systems 2(1), February 1984, pp. 39-59.
  2. Brian N. Bershad, Thomas E. Anderson, Edward D. Lazowska, and Henry M. Levy. Lightweight Remote Procedure Call. ACM Trans. on Computer Systems 8(1), February 1990, pp.37-55.
  3. Thorsten von Eicken, Anindya Basu, Vineet Buch, Werner Vogels U-Net: A User-Level Network Interface for Parallel and Distributed Computing in Proceedings of the 15th ACM Symposium on Operating Systems Principles, Copper Mountain Resort, Colorado, December 1995, 40-53.

Extra material:

  1. Active Messages
  2. Michael D. Schroeder, Andrew D. Birrell and Roger M. Needham. Experience with Grapevine: The Growth of a Distributed System. ACM Trans. on Computer Systems, 2(1), February 1984.

Scheduling

  1. 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.
  2. 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.
  3. Banga, G., Druschel, P,. Mogul, J. Resource Containers: A New Facility for Resource Management in Server Systems. Proceedings of the Third Symposium on Operating System Design and Implementation (OSDI-III), New Orleans, LA, February, 1999, pages 45-58.

Extra material:

  1. Borrowed virtual time scheduling
  2. Multi-core scheduling

Concurrency

  1. Butler W. Lampson, David D. Redell Experiences with Processes and Monitors in Mesa Communications of the ACM, 23 2, February 1980, pp. 105-117.
  2. Thomas Anderson, Edward Lazowska, and Henry Levy. The Performance Implications of Thread Management Alternatives for Shared-Memory Multiprocessors. IEEE Trans. on Computers 38(12), December 1989, pp. 1631-1644.
  3. Christopher J. Rossbach, Owen S. Hofmann, Donald E. Porter, Hany E. Ramadan, Aditya Bhandari, Emmett Witchel. TxLinux: Using and Managing Transactional Memory in an Operating System. in Proc. of the 21st Symposium on Operating Systems Principles (SOSP), Oct. 2007
  4. Stefan Savage, Michael Burrows, Greg Nelson, Patrick Sobalvarro, Thomas Anderson. Eraser: A Dynamic Data Race Detector for Multithreaded Programs. In SOSP'97.

Extra material:

  1. Dave Dice, Hui Huang, Mingyao Yang. Asymmetric Dekker Synchronization.
  2. Dave Dice Mark Moir William Scherer. Quickly Reacquirable Locks.
  3. Ulrich Drepper. Futexes Are Tricky. Jan. 2008.

File Systems and Storage

  1. 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.
  2. Mendel Rosenblum and John K. Ousterhout. The Design and Implementation of a Log-Structured File System. ACM Trans. on Computer Systems 10(1), February 1992, pp. 26-52.
  3. Adam Sweeney, Doug Doucette, Wei Hu, Curtis Anderson, Mike Nishimoto, and Geoff Peck. Scalability in the XFS File System Proceedings of the USENIX 1996 Technical Conference.
  4. 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.
  5. Russel Sandberg, David Goldberg, Steve Kleiman, Dan Walsh, and Bob Lyon. Design and Implementation of the Sun Network Filesystem.Proceedings of the Summer 1985 USENIX Conference, Portland OR, June 1985, pp. 119-130.
  6. David A. Patterson, Garth Gibson, and Randy H. Katz. A Case for Redundant Arrays of Inexpensive Disks (RAID) Proceedings of the 1988 ACM SIGMOD Conference on Management of Data, Chicago IL, June 1988.
  7. Wilkes, John and Golding, Richard and Staelin, Carl and Sullivan, Tim. The HP AutoRAID hierarchical storage system, ACM Trans. Comput. Syst.,Feb. 1996,
  8. E. K. Lee and C. A. Thekkath. Petal: Distributed virtual disks. In Proc. 7th Int. Conf. Architectural Support for Programming Languages and Operating Systems (ASPLOS) , pages 84--92, October 1996.
  9. Chandramohan Thekkath, Timothy Mann, and Edward Lee. Frangipani: A Scalable Distributed File System. Proc. of the 16th ACM Symposium on Operating Systems Principles, October 1997, pages 224-237.
  10. Garth A. Gibson, David F. Nagle, Khalil Amiri, Jeff Butler, Fay W. Chang, Howard Gobioff, Charles Hardin, Erik Riedel, David Rochberg and Jim Zelenka. A cost-effective, high-bandwidth storage architecture. Proceedings of the eighth international conference on Architectural support for programming languages and operating systems, 1998, pp. 92--103
  11. Sanjay Ghemawat, Howard Gobioff, and Shun-Tak Leung. The Google File System. in 19th ACM Symposium on Operating Systems Principles, Lake George, NY, October, 2003.

Extra Material:

  1. Sun Microsystems ZFS
  2. Gibson, G., Nagle, D., Amiri, K., Chang, F., Feinberg, E., Gobioff, H., Lee, C., Ozceri, B., Riedel, E., Rochberg, D. and Zelenka, J. File Server Scaling with Network-Attached Secure Disks in Proceedings of Proc. of the ACM International Conference on Measurement and Modeling of Computer Systems (Sigmetrics), 1997.

Reliability

Principles

  1. Jim Gray. Why Do Computers Stop and What Can Be Done About It?. Tandem Tech Report TR-85.7, June 1985.

Approaches

  1. Robert Haskin, Yoni Malachi and Gregory Chan. Recovery Management in QuickSilver. ACM Trans. on Computer Systems 6(1), February 1988, pp. 82-108.
  2. Werner Vogels, Dan Dumitriu, Ken Birman, Rod Gamache, Mike Massa, Rob Short, John Vert, Joe Barrera. The Design and Architecture of the Microsoft Cluster Service -- A Practical Approach to High-Availability and Scalability in Proceedings of the Fault-Tolerant Computing Symposium, 1998.
  3. Y. Saito, B. Bershad and H. Levy.Manageability, Availability and Performance in Porcupine: A Highly Scalable Internet Mail Service. Proc. of the 17th ACM Symp. on Operating Systems Principles, Dec. 1999.
  4. Michael M. Swift, Brian N. Bershad, and Henry M. Levy. Improving the Reliability of Commodity Operating Systems. in Proceedings of the 19th ACM Symposium on Operating Systems Principles, Oct. 2003.
  5. Kinshuk Govil, Dan Teodosiu, Yongqiang Huang, and Mendel Rosenblum. Cellular Disco: resource management using virtual clusters on shared-memory multiprocessors. In Proceedings of 17th Symposium on Operating Systems Principles, 1999.
  6. Robert Wahbe, Steven Lucco, Thomas E. Anderson, and Susan L. Graham, Efficient Software-Based Fault Isolation. In Proc. of the 14th ACM Symposium on Operating Systems Principles (SOSP '93), pages 203--216, December 1993.
  7. Anita Borg, Wolfgang Blau, Wolfgang Graetsch, Ferdinand Herrmann, and Wolfgang Oberle. Fault tolerance under UNIX. ACM Transactions on Computer Systems, 7(1), February 1989.
  8. T. C. Bressoud and F. B. Schneider. Hypervisor-based fault tolerance in Proceedings of the fifteenth ACM symposium on Operating systems principles, Pages 1 - 11, Oct. 1995

Extra Material:

  1. Rx
  2. Nancy P. Kronenberg, Henry M. Levy and William D. Strecker. VAXclusters: A Closely-Coupled Distributed System. In ACM Trans. Comput. Syst., 4(2), 1986
  3. Dawson Engler, David Yu Chen, Seth Hallem, Andy Chou, and Benjamin Chelf. Bugs as deviant behavior: a general approach to inferring errors in systems code. In Proceedings of the 18th ACM Symposium on Operating Systems Principles, pages 57--72, Banff, Alberta, Canada, October 21--24, 2001.
  4. Andy Chou, Junfeng Yang, Benjamin Chelf, Seth Hallem, and Dawson Engler. An empirical study of operating systems errors. In Proceedings of the 18th ACM Symposium on Operating Systems Principles (SOSP18), pages 73--88, October 2001.
  5. Dawson Engler, Benjamin Chelf, Andy Chou, and Seth Hallem. Checking System Rules Using System Specific, Programmer-Written Compiler Extensions. Proceedings of the Fourth Symposium on Operating Systems Design and Implementation, San Diego, CA, October 2000.
  6. Frank Schmuck and Jim Wyllie. Experience with Transactions in Quicksilver. Proceedings of the 12th ACM Symposium on Operating Systems Principles (Asilomar, CA; Oct. 1991)

Security

  1. Saltzer, J. H. Protection and the control of information sharing in Multics. Commun. ACM 17, 7 (Jul. 1974), 388-402.
  2. Robert Morris and Ken Thompson. Password security: A case history. Communications of the ACM, 22(11):594--597, 1979.
  3. Roger M. Needham and Michael D. Schroeder. Using Encryption for Authentication in Large Networks of Computers. Communications of the ACM 21(12), December 1978, pp.993-998.
  4. J. G. Steiner, C. Neuman and J. I. Schiller. Kerberos: An Authentication Service for Open Network Systems. USENIX '88, Dallas, TX, February 1988, pp. 191-202.
  5. Edward Wobber, Martín Abadi, Mike Burrows, Butler Lampson. Authentication in the Taos Operating System Proceedings of the 14th ACM Symposium on Operating System Principles, 1993.
  6. Jonathan M. McCune, Adrian Perrig, Michael K. Reiter. Bump in the Ether: A Framework for Securing Sensitive User Input In Proceedings of the USENIX Annual Technical Conference, June 2006.
  7. Tal Garfinkel, Ben Pfaff, Jim Chow, Mendel Rosenblum, and Dan Boneh. Terra: a virtual machine-based platform for trusted computing. In Proceedings of the nineteenth ACM symposium on Operating systems principles, pages 193--206. ACM Press, 2003.
  8. Ross J. Anderson, Why Information Security is Hard -- An Economic Perspective. in Proceedings of the Seventeenth Computer Security Applications Conference, IEEE Computer Society Press (2001), pp 358--365.
  9. Ken Thompson. Reflections on Trusting Trust. Communications of the ACM, vol. 27, pp. 761--763, August 1984.

Extra Material

  1. Butler Lampson, Protection. In Proceedings of the 5th Annual Princeton Conference on Information Sciences and Systems, 1971.
  2. Jerome H. Saltzer and Michael D. Schroeder. The protection of information in computer systems. Proceedings of the IEEE, 63(9):1278--1308, September 1975.
  3. Butler Lampson, Martín Abadi, Mike Burrows, and Edward Wobber. Authentication in distributed systems: Theory and Practice. In Proceedings of the 13th ACM Symposium on Operating System Principles, pages 165-182, 1991.

Manageability

  1. R. Chandra, N. Zeldovich, C. Sapuntzakis, and M. S. Lam. The Collective: A Cache-Based System Management Architecture. In Proceedings of the Second Symposium on Networked Systems Design and Implementation (NSDI 2005), pages 259-272, May 2005.
  2. Y. Saito, B. Bershad and H. Levy.Manageability, Availability and Performance in Porcupine: A Highly Scalable Internet Mail Service. Proc. of the 17th ACM Symp. on Operating Systems Principles, Dec. 1999.
  3. Armando Fox, Steven Gribble, Yatin Chawathe, Eric Brewer, and Paul Gauthier. Cluster-based Scalable Network Services. Proc. of the 16th ACM Symp. on Operating Systems Principles, October 1997, pp. 78-91.
  4. Jeffrey O. Kephart and David M. Chess. The vision of autonomic computing. IEEE Computer 36(1):41--52, 2003.
  5. David Patterson, Aaron Brown, Pete Broadwell, George Candea, Mike Chen, James Cutler, Patricia Enriquez, Armando Fox, Emre Kiciman, Matthew Merzbacher, David Oppenheimer, Naveen Sastry, William Tetzlaff, Jonathan Traupman, and Noah Treuhaft. Recovery Oriented Computing (ROC): Motivation, Definition, Techniques, and Case Studies. Technical Report CSD-02-1175, U.C. Berkeley, 2002.
  6. Yixin Diao, Joseph L. Hellerstein, Sujay Parekh, Rean Griffith, Gail Kaiser and Dan Phung. Self-Managing Systems: A Control Theory Foundation.12th IEEE International Conference and Workshops on the Engineering of Computer-Based Systems (ECBS'05) pp. 441-448, 2005.
  7. Aaron B. Brown and David A. Patterson. Undo for operators: Building an undoable e-mail store. In Proc. USENIX Annual Technical Conference, San Antonio, TX, 2003.

Extra material

  1. Jeffrey O. Kephart and David M. Chess. The vision of autonomic computing. IEEE Computer 36(1):41--52, 2003.

Power management

  1. Cinder
  2. Currentcy
  3. Koala

Great thoughts on systems's research

  1. Jim Waldo. On System Design Sun Microsystems, 2006.
  2. Butler W. Lampson. Hints for Computer System Design. CM Operating Systems Rev. 15, 5 (Oct. 1983), pp 33-48. Reprinted in IEEE Software 1, 1 (Jan. 1984), pp 11-28.
  3. Roy Levin and David D. Redell. An Evaluation of the Ninth SOSP Submissions, or, How (and How Not) to Write a Good Systems Paper. ACM SIGOPS Operating Systems Review, Vol. 17, No. 3 (July, 1983), pages 35-40.
Edit - History - Print - Recent Changes - Search
Page last modified on January 28, 2016, at 09:16 AM