Reading Questions

Security papers

12/5: No question today -- read the paper and keep working!

Virtual Memory, Processes, and Sharing in MULTICS

12/5: No question today -- read the paper and work even harder on your projects!

Machine-Independent Virtual Memory Management for Paged Uniprocessor and Multiprocessor Architectures

12/3: No question today -- read the paper and work on your projects!

Virtual Memory Management in the VAX/VMS Operating System

11/26: No question today -- read the paper and work on your projects!

Scheduler Activations: Effective Kernel Support for the User-Level Management of Parallelism

11/21: Evaluate the performance evaluation in this paper: what does it show? What is missing? Does it make the points that the paper should make? (be specific)

Resource Containers: A New Facility for Resource Management in Server Systems

11/19: Discuss two or three fundamental differences between resource management issues in server systems versus typical desktop machines.

Lottery Scheduling: Flexible Proportional-Share Resource Mangement

11/14: Come up with and describe a deterministic version of lottery scheduling (i.e., no randomness).

Monitors: An Operating System Structuring Concept
Experiences with Processes and Monitors in Mesa

11/12: No question for today -- read the papers and work on your project!

IO-Lite: A Unified I/O Buffering and Caching System

11/4: Criticize I/O Lite. What are its biggest flaws?

Measurements of a Distributed File System

10/31 (Halloween): Given a trace of file accesses over a given day, how can one calculate file lifetime? What are some possible inaccuracies that could evolve?

Disconnected Operation in the Coda File System

10/29: Describe the basic trade-offs involved in designing a hoarding policy. How would you design a policy that's different than the one in the paper?

Scale and Performance in a Distributed File System

10/24: Describe a workload that would run much better on NFS than AFS. Then do the reverse (run much on AFS than NFS).

Design and Implementation of the Sun Network Filesystem

10/22: No question for today... hurray!

The HP AutoRAID Hierarchical Storage System

10/17: How could a user take advantage of AutoRAID behavior to make sure that their data is always in the higher-performance part of the disk array? What could AutoRAID do to discourage this behavior?

A Case for Redundant Arrays of Inexpensive Disks (RAID)

10/15: Assume you have a RAID-5 array, and a workload that consists of a large number of small writes. Why does this workload make RAID-5 performance so poor? What could you do in the RAID itself in terms of extra hardware or different software strategies to remedy this problem?

The Design and Implementation of a Log-Structured File System

10/10: Describe a workload in which LFS would perform poorly, as compared to FFS. What are the characteristics of such a workload?

A Fast File System for UNIX

10/3: The FFS layout policy places files and inodes that are in the same directory near one another on disk. Come up with a few concrete examples of when this policy would be bad for performance. Try to be as specific as possible, i.e., don't just say "this policy is bad when you access files that are in different directories at the same time".

The Impact of Operating System Structure on Memory System Performance

10/1: Find one conclusion made by the paper that you believe to be least true (or even untrue). Use data from the paper to prove your point.

Information and Control in Gray-Box Systems

9/26: The gray-box approach: Try to come up with (at least) one OS service that would be useful to have, is not available on some platforms, and that could likely be implemented with a gray-box ICL. Be as specific as you can be with the details. What will be difficult to implement? Hint: think about the parts of a typical OS for inspiration, such as the CPU scheduler, the memory manager, the file system, and even the networking subsystem.

Exterminate All Operating System Abstractions
Exokernel: An Operating System Architecture for Application-level Resource Management
Dealing with Disaster: Surviving Misbehaved Kernel Extensions

9/24: Exokernel and VINO attack the problem of allowing application's to have more influence over OS services. Compare and contrast their two approaches to the same problem -- which approach is better and why?

Disco: Running Commodity Operating Systems on Scalable Multiprocessors

9/17: Discuss the main differences between resource management in a typical "monolithic" OS and the Disco virtual machine monitor.

Pilot: An Operating System for a Personal Computer

9/12: What assumptions about a personal-computer OS did the authors of Pilot get right? Which did they get wrong?

A good answer for the Pilot question
HYDRA: The Kernel of a Multiprocessor Operating System
The UNIX Time-Sharing System

9/10: UNIX was a successful system, whereas Hydra was not. Given that you've read both papers, what is the best technical reason for this?

A good answer for the Unix/Hydra question

The Structure of the "THE" Multiprogramming System
The Nucleus of a Multiprogramming System

9/5: What are the main philosophical differences in design of the THE system and the Nucleus system?

A good answer for the THE/Nucleus question