M.I.T. DEPARTMENT OF EECS

6.033 - Computer System Engineering Handout 29 - Issued April 13, 2000



Assignment 9: April 17 - 28


This assignment covers two calendar weeks.

For Lecture, Wednesday, April 19 (L20: Transactions)

Read chapter 8, sections A and B and appendix 8-A to prepare for this lecture. Appendix 8-B is optional, but recommended.

For Recitation, Thursday, April 20 (R20: RAID) - Drop Date

Today's reading is "Disk system architectures for high performance computing" by Katz et al., reading #23. This paper describes how to build high-availability storage systems using disk arrays; its terminology is used by industry today. Sections I through IV can be skimmed; the key section to focus on is Section V. (If you aren't familiar with how disks work, it is worth reading the first four paragraphs of section II carefully and also paying a little, but not much, more attention to section IV.) .

Hands-on

Athena uses the Andrew File System. In this hands-on assignment, we'd like you to explore how AFS is designed to protect against the loss of data if any system failures occur.

AFS uses replication to protect critical volumes from failure. One of the most important volumes is the root volume since all lookups must proceed from there. Run the command:

vos examine root.cell 
to see what sites have replicas of the root volume.
  1. How does replication help protect against server failure? Where are these machines located? (You can lookup information about a machine by running: add moira; stella hostname). How protected are we against environmental faults?
  2. Suppose one of these servers goes down --- one method to deal with this would be to have clients use a default server and fall-over to one the replicas when necessary. How might a client detect this? Another method would be to have a central service location server respond with a location of a currently available replica. What might be an advantage of this method over the client-based one? What might be a disadvantage?
  3. How protected is your locker from server failures or environmental faults? Your volume is named user.username (e.g. user.maymay or user.lyudmila). You can examine volumes by typing: vos exa volumename. Many volumes have .backup volumes. Does the presence of the backup volume increase availability of your home directory? Why or why not? What else are backup volumes good for?

For Lecture, Monday, April 24 (L21: Recoverability)

Read chapter 8, section B (pages 8-21 to 8-34) and the first part of section D (8-D.1, pages 8-45 to 8-51) to prepare for this lecture.

For Recitation, Tuesday, April 25 (R21: System R)

First, read chapter 8, appendix 8-C, which provides some guidance on the real reading assignment, which is "The recovery manager of the system R database manager" by Gray et al., reading #25. This paper is a heavy duty paper, but contains important, well-explained information. Pay attention to the details. Why did the RSS turn out to be so complex? How does shadowing work? What useful features and functionality does the log provide? How is consistency and serializability obtained?

For Lecture, Wednesday, April 26 (L22: Isolation)

Read chapter 8, sections C (pages 8-37 to 8-44) and the remaining part of section D (8-D.2 to 8-D.4, pages 8-51 to 8-58) to prepare for this lecture.

Recitation, Thursday, April 27 (R22: LFS)

Today we will discuss reading #34, "The design and implementation of a log-structured file system" (this link is only valid if you are within MITnet or have a subscription to ACM), by Mendel Rosenblum and John K. Ousterhout. In view of the discussion in recitation, think about what the major differences are between LFS and a standard UNIX file system. What hardware advances does LFS take advantage of? Which components of the UNIX file system does LFS re-use and why?

Design Project 2 is due today. Remember to turn in two copies of your report (one with the names of the group members and another with a 6-digit code instead; put the code on your signed copy as well). Please, pick your own 6-digit nonce. The second copy of your report will go to some other group in the class (and your group, in turn, will receive a copy of another report) for grading and comments. This time the late policy is simple: there are absolutely no extensions.


System aphorism of the week
An engineer is a person who can do for a dime what any fool can do for a dollar. (Anonymous)


Go to 6.033 Home Page Questions or Comments: 6.033-tas@mit.edu