- E. W. Dijkstra, The Structure of the 'THE'-Multiprogramming System,
Communications of the ACM, Vol. 11, No. 5, May 1968, pp. 341-346.
Q: Dijkstra explicitly states their goals
for the THE operating system. How do these goals compare to, say,
Microsoft's goals for the WinXP operating system? Why do we no longer
build operating systems with the same goals as THE?
- P. B. Hansen, The Nucleus of a Multiprogramming System,
Communications of the ACM, Vol. 13, No. 4, April 1970, pp. 238-241,
Optional related paper on a deployment experience of RC 4000:
P. B. Hansen, The RC 4000 Real-Time Control System at Pulway, BIT 7, pp. 279-288, 1967.
Q: How does synchronization in the RC 4000 system compare with synchronization in the THE system?
- D. G. Bobrow, J. D. Burchfiel, D. L. Murphy, and R. S. Tomlinson,
TENEX, a Paged Time Sharing System for the PDP-10, Communications of
the ACM, Vol. 15, No. 3, March 1972, pp. 135-143.
Q: What features in TENEX are reminiscent of features in Unix (a later system)?
- 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, Vol. 17, No. 6, June 1974, pp. 337-345.
Q: How is a Hydra procedure different from the procedures we are familiar with in a typical language and runtime environment?
- J. H. Saltzer, Protection and the Control of Information
Sharing in Multics, Communications of the ACM, Vol. 17, No. 7, July 1974,
Q: Compare and contrast protected subsystems in Multics with procedures in Hydra.
- D. M. Ritchie and K. Thompson, The UNIX Time-Sharing System,
Communications of the ACM, Vol. 17, No. 7, July 1974, pp. 365-375.
Q: What aspects of Unix as described in the 1974 paper do not survive
today, or have been considerably changed?
- B. Lampson,
Systems Review, Vol. 8, No. 1, January 1974, pp. 18-24.
Q: What are the concepts in HYDRA that
correspond to Lampson's definitions of "Domain", "Object", and "Access
Matrix"? What about Multics?
- D. D. Redell, Y. K. Dalal, T. R. Horsley, H. C. Lauer,
W. C. Lynch, P. R. McJones, H. G. Murray, and S. C. Purcell, "Pilot: An Operating System for a
Personal Computer," Communications of the ACM, Vol. 23, No. 2,
February 1980, pp. 81-92.
Q: How do the requirements of the Pilot
operating system differ from the systems we have read about so far,
and how does the design of Pilot reflect those
- J. K. Ousterhout, D. A. Scelza, and P. S. Sindhu, Medusa: An Experiment in Distributed Operating Systems Structure, Communications of the ACM, Vol. 23, No. 2, February 1980, pp. 92-105.
Q: What are the three distributed OS structures outlined in the paper, which structure does Medusa use, and why?
- D. D. Clark,
The Structuring of Systems using Upcalls,
Proceedings of the 10th Symposium on Operating Systems Principles. pp. 171-180, December 1985.
Q: What are the benefits of using an upcall
structure, and what are the potential drawbacks?
- (Class cancelled due to campus closure.)
- (Class cancelled due to campus closure.)
- D. R. Cheriton and W. Zwaenepoel, The
Distributed V Kernel and its Performance for Diskless
Workstations, Proceedings of the 9th Symposium on Operating
Systems Principles, pp. 129-140, November 1983.
Q: What is the argument for diskless
workstations, and do you agree/disagree with the
- J. K. Ousterhout, A. R. Cerenson, F. Douglis,
M. N. Nelson, and B. B. Welch, The Sprite Network Operating
System, IEEE Computer, Vol. 21, No. 2, February 1988, pp. 23-36.
J. K. Ousterhout,
Q: How do the caching policies in Sprite
differ from those in the V Kernel?
| OS/Architecture Interaction
- H. Haertig, M. Hohmuth, J. Liedtke, S. Schoenberg, J. Wolter,
"The Performance of Micro-Kernel- Based Systems," Proceedings
of the 16th Symposium on Operating Systems Principles, October 1997, pp. 66-77.
Q: Compare and contrast the L4 microkernel with the RC4000 Nucleus
and the HYDRA kernel in terms of their goals to provide a basis
on which higher level OS functionality can be implemented.
- P. Barham, B. Dragovic, K. Fraser, S. Hand, T. Harris, A. Ho, R.
Neugebauer, I. Pratt, and A. Warfield, "Xen and the Art of Virtualization," Proceedings of the 19th Symposium on Operating System Principles, October, 2003.
Q: Microkernels and virtual machine monitors are two different ways to
support the execution of multiple operating systems on modern
hardware. How does the microkernel approach in L4 compare and
constrast with the VMM approach in Xen?
- Thomas E. Anderson, Brian N. Bershad, Edward D. Lazowska, Hanry M. Levy, "Scheduler Activations: Effective Kernel Support for the User-level Management of Parallelism", Proceedings of the 13th ACM
Symposium on Operating Systems Principles, Sept. 1991, pp. 95-109.
Q: The goal of scheduler activations is to have the benefits of both user
and kernel threads without their limitations. What are the
limitations of user and kernel threads, and what are the benefits that
scheduler activations provide?
- Carl A. Waldspurger and William E. Weihl, "Lottery Scheduling: Flexible Proportional-Share Resource Management." In Proceedings of the First USENIX Symposium on Operating System Design and Implementation, November, 1994.
Q: At a high level, as a mechanism how does lottery scheduling provide
modular resource management? Why can't the Unix scheduler provide a
similar kind of management?
Optional related papers on lottery scheduling:
David Petrou, John W. Milford, Garth A. Gibson, "Implementing
Lottery Scheduling: Matching the Specializations in Traditional
Schedulers", In Proceedings of the USENIX Annual Technical Conference, 1999.
Carl A. Waldspurger and William E. Weihl, "Stride Scheduling: Deterministic Proportional-Share Resource Management",
Technical Report: TM-528, MIT, Cambridge, MA, 1995.
- H. M. Levy and P. Lipman, "Virtual Memory Management in VAX/VMS", IEEE Computer, Vol. 15, No. 3, March 1982, pp.35-41.
Q: The paper states, "VAX/VMS, then, is a collection of procedures that
exist in the address space of each process." Explain in your own
words what this statement means.
- Richard Rashid, Avadis Tevanian, Michael Young, David Golub,
Robert Baronn, David Black, William Bolosky, and Jonathan Chew, "Machine-Independent
Virtual Memory Management for Paged Uniprocessor and Multiprocessor
Architectures," In Proceedings of the Second International
Conference on Architectural Support for Programming Languages and
Operating Systems, October 1987, pp. 31-39.
Q: Why does Mach support copy-on-write, and how does it implement it?
- Marshall K. McKusick, William N. Joy, Samuel J. Leffler, and
Robert S. Fabry, "A Fast File System for Unix," ACM Transactions on
Computer Systems, 2(3), August 1984, pp. 181-197.
Q: In FFS, reading is always at least as fast as writing.
In old UFS, writing was 50% faster. Why is this?
- Mendel Rosenblum and John K. Ousterhout, "The
Design and Implementation of a Log-Structured File System,"
Proceedings of the 13th ACM Symposium on Operating Systems Principles,
Q: When we want to read a block in LFS on disk, how do we figure out where it is?
- Gregory R. Ganger, Marshall Kirk McKusick, Craig A.N. Soules, and
Yale N. Patt. "Soft
Updates: A Solution to the Metadata Update Problem in File
Systems," ACM Transactions on Computer Systems, Vol. 18, No. 2,
May 2000, Pages 127-153.
You may want to skim the accompanying Tech Report, which has far more
Gregory Ganger and Yale Pratt,
"Soft Updates: A Solution to the Metadata Update Problem in File
University of Michigan Tech Report CSE-TR-254-95, August 1995.
- P. M. Chen, W. T. Ng, S. Chandra, C. Aycock, G. Rajamni, and
D. Lowell, "The Rio File Cache: Surviving Operating System Crashes,"
In Proceedings of the Seventh International Conference on
Architectural Support for Programming Languages and Operating
Systems, SIGPLAN Notices 31(9):74-83, September 1996.
Q: Do you believe the underlying argument in Rio? Why or why not? Would you use a system
that recovered data using Rio?
- Michael J. Feeley, William E. Morgan, Frederic H. Pighin, Anna R.
Karlin, and Henry M. Levy, "Implementing Global Memory
Management in a Workstation Cluster", Proceedings of the 15th ACM
Symposium on Operating Systems Principles, Dec. 1995, 29(5): 201-212.
Q: How does the implementation of the GMS page replacement algorithm
approximate the ideal algorithm?
- D. S. Santry, M. J. Feeley, N. C. Hutchinson, A. C. Veitch,
R. W. Carton, and J. Or, "Deciding When to Forget in the
System." In Proceedings of the Seventeenth ACM Symposium on
Operating Systems Principles, December 12-15, 1999, Charleston,
SC, pp. 110-123.
Q: Do you think versioning would be a useful feature in contemporary
file systems? Both the VMS file system and the Andrew File System
had versioning. Why do you think Unix FFS and NTFS do not?
- B. N. Bershad, S. Savage, P. Pardyak, E. G. Sirer, M. E. Fiuczynski, D. Becker, C. Chambers, S. Eggers, "Extensibility, Safety and Performance in the SPIN Operating System." In Proceedings of the Fifteenth ACM Symposium on
Operating Systems Principles, December, 1995, Copper Mountain, CO, pp. 267-283.
Q: What is the Spin protection model for extensions, and to which systems
we have read about is it most similar?
- M. F. Kaashoek, D. R. Engler, G. R. Ganger, H. M. Briceno, R. Hunt, D. Mazieres, T. Pinckney, R. Grimm, J. Jannotti and K. Machkenzie, "Application Performance and Flexibility on Exokernel Systems." In Proceedings of the Fifteenth ACM Symposium on Operating Systems Principles, October 1997, St Malo, France, pp. 52-65.
Q: How does customizability in Exokernel compare/contrast to
extensibility in SPIN?
- Thursday 12/6, 11-12:30pm, WLH 2205
|back to top ^