Paper Question
The following are specific questions that need to be answered in your reviews for
the required readings. The answers to these questions may or may not be in the
papers already. You need to read the papers and answer these questions based
on your understanding
Week 1, Thursday Lecture
THE paper
Q: Dijkstra explicitly states their goals for the THE operating system. How do these goals compare to, say, Microsoft's goals for the Windows operating system? Why do we no longer build operating systems with the same goals as THE?
Nucleus paper
Q: How does synchronization in the RC 4000 system compare with synchronization in the THE system?
Week 2, Tuesday Lecture
Unix paper
Q: What aspects of Unix as described in the 1974 paper do not survive today, or have been considerably changed?
Week 2, Thursday Lecture
Pilot paper
Q: What technology trend motivates an operating system like Pilot and what unique requirements
of Pilot influence how it is designed?
Plan 9 paper
Q: What does it mean, "9P is really the core of the system; it is fair to say that the Plan 9 kernel is primarily a 9P multiplexer"?
Week 3, Thursday Lecture
L4 paper
Q: Compare and contrast the L4 microkernel with the RC4000 Nucleus in terms of their goals to provide a basis on which higher level OS functionality can be implemented.
Week 4, Tuesday Lecture
Exokernel paper
Q: Compare and contrast an exokernel with a microkernel.
Week 4, Thursday Lecture
Drawbridge paper
Q: How does Drawbridge differ with Exokernel in terms of their motivation and approaches?
Singularity paper
Q: How does the language-based approach that Singularity takes compare and contrast with Pilot?
Week 5, Thursday Lecture
VAX/VMS paper
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.
Mach VM paper
Q: Why does Mach support copy-on-write, and how does it implement it?
Week 6, Tuesday Lecture
Scheduler Activations paper
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?
Lottery Scheduling paper
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?
Week 6, Thursday Lecture
Hoare Monitor paper
Q: What are "monitor invariant" I and "condition" B, and why are they important in the discussion of monitors?
Mesa Monitor paper
Q: Compare and contrast synchronization in Java with Hoare monitors and Mesa monitors.
Week 7, Tuesday Lecture
FFS paper
Q: In FFS, reading is always at least as fast as writing. In old UFS, writing was 50% faster. Why is this?
LFS paper
Q: When we want to read a block in LFS on disk, how do we figure out where it is?
Week 7, Thursday Lecture
Soft Updates paper
Q: What are the advantages and disadvantages of soft updates compared to write-ahead logging?
Rio paper
Q: Do you believe the underlying argument in Rio? Why or why not? Would you use a system that recovered data using Rio?
Week 9, Thursday Lecture
Barrelfish paper
Q: Briefly compare and contrast multikernel with microkernel.
Corey paper
Q: Compare and contrast Corey with multi-kernel.
Week 10, Tuesday Lecture
Xen paper
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?
Week 10, Thursday Lecture
V kernel paper
Q: What is the argument for diskless workstations, and do you agree/disagree with the argument?
Sprite paper
Q: How do the caching policies in Sprite differ from those in the V Kernel?
Week 11, Tuesday Lecture
Bugs beliefs paper
Q: What are some potential disadvantages with the proposed method, and how
does this method compare with other methods you know of for detecting systems bugs?
Week 14, Tuesday Lecture
End-to-end argument paper
Q1: Does the end-to-end argument suggest that we should not spend efforts making
functions in the low levels of a system like communication more reliable?
Q2: Give an example that you can think of or have encountered where the
end-to-end argument applies.