CSE 221

Welcome to the CSE 221 web page. This is the graduate Operating System class.

Office hours: Thu 2pm-3pm. As it says on the handout, you can drop by at other times sans appointments, and I'll accommodate you if I'm not busy; to be sure, make an appointment.

This web page contains virtual handouts / announcements.


  • Mar 30. None.
  • Apr 1. The Nucleus of a Multiprogramming System by Per Brinch Hansen, and The Structure of ``The''-Multiprogramming System by E J Djikstra.
  • Apr 6. Monitors: An Operating System Structuring Concept by C A R Hoare, and A virtual machine time-sharing system by R A Meyer and L H Seawrite.
  • Apr 8. Tenex by Bobrow et al and Hydra by W. Wulf et al.
  • Apr 13. Multics by Bensoussan and Clingen, and Protection by Lampson.
  • Apr 15. On the Duality of Operating System Structures by Lauer and Needham, and Task Communication in Demos by Baskett and Montague. Note: the copy center goofed on the Duality paper, and copied every other page. Please drop by my office for the corrected version.
  • Apr 20. StarOS, a Multiprocessor Operating System for the Support of Task Forces by Jones, Chansler, Durham, Schwans, and Vegdahl, and Experience with Processes and Monitors in Mesa by Lampson and Redell.
  • Apr 22. Pilot: An Operating System for a Personal Computer by Redell, Dalal, Horsley, Lauer, Lynch, McJones, Murray, and Purcell, and Time, Clocks, and the Ordering of Events in a Distributed System by Lamport.
  • Apr 27. Accent: A communication oriented network operating system kernel by Rashid, and Locus: A Network Transparent, High Reliability Distributed System by Popek, Walker, Chow, Edwards, Kline, Rudisin, and Thiel. (FYI: ZDNet had an article on the Perq not too long ago.)
  • Apr 29. The Distributed V Kernel and its Performance for Diskless Workstations by Cheriton and Zwaenepoel, and A File System Supporting Cooperation between Programs by Reid and Karlton.
  • May 4. Medusa: An Experiment in Distributed Operating System Structure by John K. Ousterhout, Donald A. Scelza, and Pradeep S. Sindhu, and Hints for Computer System Design by Butler W. Lampson
  • May 6. Implementing Remote Procedure Calls by Andrew D. BIrrell and Bruce Jay Nelson, and Experience with Grapevine: The Growth of a Distributed System by Michael D. Schroeder, Andrew D. Birrell, and Roger M. Needham.
  • May 11. Distributed Simulation and the Time Warp Operating System by David Jefferson, Brian Beckman, Fred Wieland, Leo Blum, Mike DiLoreto, Phil Hontalas, Pierre Laroche, Kathy Sturdevant, Jack Tupman, Van Warren, John Wedel, Herb Younger, and Steve Bellenot, and The Structuring of Systems Using Upcalls by David Clark.
  • May 13. The Sprite Network Operating System by John K. Ousterhout, Andrew R Cerenson, Frederick Douglis, Michael N. Nelson, and Brent B Welch, and Spritely NFS: Experiments with Cache-Consistency Protocols by V. Srinivasan and Jeffrey C. Mogul
  • May 18. Disconnected Operation in the Coda File System by James J. Kistler and M. Satyanarayanan, and The Design and Implementation of a Log-Structured File System by Mendel Rosenblum and John K. Ousterhout. If you're interested in LFS, you may also want to see Margo Seltzer et al's paper: Seltzer, M., Smith, K., Balakrishnan, H., Chang, J., McMains, S., Padmanabhan, V. File System Logging versus Clustering: A Performance Comparison. Proceedings of the 1995 Usenix Technical Conference.
  • May 20. First Class User-Level Threads by Brian D. Marsh, Michael L. Scott, Thomas J. LeBlanc, and Evangelos P. Markatos, and Implementation and Performance of Munin by John B. Carter, John K. Bennett, and Willy Zwaenepoel.
  • May 27. File Server Scaling with Network-Attached Secure Disks by Garth A. Gibson, David F. Nagle, Khalil Amiri, Fay W. Chang, Eugene M. Feinberg, Howard Gobioff, Chen Lee, Berend Ozceri, Erik Riedel, David Rochberg, and Jim Zelenka, and Exterminate All Operating System Abstractions by Dawson R. Engler and M. Frans Kaashoek.
  • For our OSSurvey98 conference, you, as members of the program committee, should pick up copies of the submissions from outside of my office door -- they should be ready by late afternoon Thursday (May 28). The papers should be evaluated using the following method (this is taken from a real conference's program committee review instructions and revised slightly, since survey papers will not necessarily contain new research -- though if there are new research ideas, that's even better):

    Papers will be evaluated in two parts: a set of numeric scores and a written commentary. Scores will be on a 1 to 7 scale (with 4 as an "average" in all cases 1 is bad, 7 is best). Do not assign a zero score. Also, please use integer values.

    Scoring will be in four categories:

    Import -- is the work (both its area and results) important to the OS community? Low scores might be given for evaluations of marketing literature and papers on inappropriate or dead topics. High scores are for papers that nearly all attendees will want to read and understand carefully.

    Novelty -- are the observations novel? Low scores should be given for papers that re-hash known observations about works in the topic area. High scores are for papers that open new fields or demonstrate new ways to attack a problem.

    Quality -- are the observations / criticisms sound? A low score might go to a paper whose observations are incorrect or whose critiques are biased or not well supported in your opinion. High scores are for papers with enough justification to convince you that the opinions are correct and viable.

    Overall -- should we accept this paper or not? This is by far the most important number. It need not be an average of the other numbers, but it should reflect them. This number can also reflect issues in addition to those described above (e.g., poor presentation or lack of knowledge of related work).

    You should write up your reviews for Monday (Jun 1) so that the numeric scores and the public comments are on one sheet of paper and the private comments are on another. You should bring to class two copies of the numeric and public reviews -- I will get one copy (along with the private comments) and the authors will get the other copy.

    There are a total of 6 papers -- so get started on these early! They are:

  • Toward A Standard Mobile Agent Framework by Renert, Spillman, and Yuceturk, (also in ps)
  • Operating System Design Considerations for the Support of Large Scale Multimedia Applications by Bell, Berggren, Gang, and Howe, (also in ps)
  • Operating System Support for Network Protocols by Goyal, Judge, Shanker, and Quach, (also in ps))
  • Job Scheduling in Distributed Parallel Systems by Anderson, Chakrabartty, and Zhu, (only in ps)
  • A Survey on the Recent Research in Distributed File Systems by Gunawan, Iyer, Klein, and Zhou, (only in ps) and
  • Extensibility in Recent Operating Systems by Bailey, Orgiyan, Suta, and Zied (also in ps).
  • Note that the conference evaluation criteria emphasizes novelty and importance to the OS community; when I grade these, these will be important, but not given as much emphasis -- I will pay more attention to the quality of the reasoning and the soundness of the observations / criticisms, so having selected what's currently ``hot'' (or what's not) wouldn't be so important.

    On Wednesday (Jun 3), the groups with the top two papers will give an oral presentation for the entire class. I'll arrange to have an overhead projector available, so you can use slides. Each group will have about 1/2 hour total, so you should plan on 20-25 minutes for the presentation and 5-10 minutes for questions and answers from the audience.

    Amusing: Operating System Sucks-Rules-O-Meter.

    [ CSE home | bsy's home page | webster i/f | yahoo | hotbot | lycos | altavista | pgp key svr | spam | commerce ]
    picture of bsy

    bsy+www@cse.ucsd.edu, last updated Tue Sep 22 08:44:02 PDT 1998.

    email bsy

    Don't make me hand over my privacy keys!