READING LIST

CS 690 – Fall 2007

 

During the course of the semester we will read & discuss several papers from the computer science literature.  Some are classics that have been studied for years.  Some are very new. The list below includes most of the papers I plan to include this term.  Some I will only ask you to skim; some you will read as a substitute for a textbook reading.  Some you will write reports on.  Some are included as supplemental readings, in case you are interested in exploring a subject further.

 

***How to Read a Research Paper***

 

  1. Start by reading the abstract, the introduction, and the conclusion.  Look at each section heading, and skim the first paragraph. At this time you are merely trying to get an overview of the paper and understand the general approach.
  2. If the assignment tells you to concentrate on specific sections, go back and read the introduction again. Then, read the assigned sections thoroughly.  If you don’t understand the basic ideas, re-read them. 
  3. If you are reading the paper to prepare a report, read all sections. Jot down notes on each section – try to summarize the main concepts in a sentence of two. At this time you may decide to limit your coverage of a few sections – for example, detailed discussions of test design and results.  Even in this case you should skim for main concepts and results.
  4. If the assignment asks specific questions, now is the time to think about the answers.  After a careful reading of most of the paper you should be able to identify the sections that address the questions being asked.
  5. Make a list of questions that you would like to have answered about the paper.  The questions may be about points you didn’t understand, or doubts you have about the authors’ work and conclusions. Read with a critical eye! Remember that the authors are trying to present their work in the most favorable way.

 

The Papers

1.        “Exokernel: An Operating System Architecture for Application-Level Resource Management” by Dawson R. Engler, M. Frans Kaashoek, and James O’Toole jr; Proceedings of the 15th ACM Symposium on Operating Systems Principles (SOSP ’95), Copper Mountain Resort, Colorado, December 1995, pages 251-266.

2.        Extensibility, Safety and Performance in the SPIN Operating System”, by Brian N. Bershad, Stefan Savage, Przemyslaw Pardyak, Emin Gun Sirer, Mar E. Fiuczynski, David Becker, Craig Chambers, Susan Eggers, Proceedings of the 15th ACM Symposium on Operating Systems Principles (SOSP ’95), Copper Mountain Resort, Colorado, December 1995, pages 267-284.
http://citeseer.ist.psu.edu/bershad95extensibility.html

3.        “Xen and the Art of Virtualization”, P. Barham, R. Dragovic, K. Fraser, S. Hand, T.  Harris, A Ho, R. Neugebauer, I. Pratt, A. Warfield, SOSP ’03.

4.        Scale and Performance in the Denali Isolation Kernel”, Andrew Whitaker, Marianne Shaw, and Steven D. Gribble, in System Design and Implementation (OSDI), Boston, MA, Dec. 2002.

5.        “Virtual Machine Monitors: Current Technology And Future Trends”, Mendel Rosenblum and Tal Garfinkel, IEEE Computer, May 2005

6.        “A Case for NOW (Networks of Workstations)”, Thomas E. Anderson, David E. Euller, David Patterson and the NOW team. IEEE Micro, Feb. 1995. http://citeseer.ist.psu.edu/anderson94case.html 

7.        “Web OS: Operating System Services for Wide Area Applications”, Amin Vahdat, Tom Anderson, Mike Dahlin, Eshwar Belani, David Culler, Paul Eastham and Chad Yoshikawa, Proceedings of the Seventh Symposium on High Performance Distributed Computing, 1998.
http://citeseer.nj.nec.com/61096.html

8.        “Opus:  an Overlay Peer Utility Service”, Rebecca Braynard, Dejan Kostic, Adolfo Rodriguea, Jeff Chase and Amin Vahdat, in Proceedings of the 5th International Conference on Open Architectures and Network Programming (OPENARCH), June 2002.

9.        “Condor -  A Hunter of Idle Workstations”, M. Litzkow, M. Livny, and M. Mutka, 8th International Conference on Distributed Computing Systems, IEE,E, June 1988, pp 104-111.

10.     “Eraser: A Dynamic Data Race Detector for Multithreaded Programs”, Stefan Savage, Michael Burrows, Greg Nelson, Partick Sobalvarro, Thomas Anderson; ACM Transactions of Computer Systems, Volume 15, No. 4, pp. 391-411, 1997.

11.     “Racetrack: Efficient Detection of Data Race Conditions via Adaptive Tracking”, Yuan Yu, Tom Rodeheffer, Wei Chen, SOSP ’05.

12.     A Fast File System for UNIX”, Marshall Kirk McKusick, William N. Joy,
Samuel J. Leffler, Robert S. Fabry, Computer Systems, volume 2, number 3, pp. 181-197, 1984.   
http://docs.freebsd.org/44doc/smm/05.fastfs/paper.html  (html version)

13.      “Extracting Guarantees from Chaos”, John Kubiatowicz, Communications of the ACM, Vol 46, No 2, February 2003, pp 33-48.
http://oceanstore.cs.berkeley.edu/publications/papers/abstracts/CACM-kubiatowicz.html

14.     “Chord: A Scalable Peer-to-peer Lookup Service for Internet Applications”, Ion Stoica, Robert Morris, David Karger, M. Frans Kaashoek, Hari Balakrishnan,

15.     “Practical, transparent operating system support for superpages”, Juan Navarro, Sitaram Iyer, Peter Druschel, Alan Cox, Proceedings of the 5th Symposium on Operating Systems Design and Implementation (OSDI 2002),

16.   End-to-End Arguments in System Design

17.     Memory Resource Management in VMware ESX Server”, Carl A. Waldspurger, Proceedings of the 5th Symposium on Operating Systems Design and Implementation, Boston MA December 2002.

18.     Virtual Machine Monitors: current Technology and Future Trends”, Mendel Rosenblun and Tal Garfinkel, IEEE Computer, May 2005