UCLA CS239--Advanced Operating Systems

Fall, 2000

Midterm Exam ("take home")

Clarifications

If you would like further clarification about any aspect of the exam, e-mail the request to rguy@cs.ucla.edu, and then check here late Friday and early Monday for any (hopefully helpful) clarifications.

Clarification #1:

Flash memory is non-volatile memory, that is, continuous power is not required to ensure continued correct storage.

Flash memory does have the peculiar property that once a location is written, it cannot be written again until an "erase" operation is performed on that location. "Erase" is very slow, and performed on a relatively large number of contiguous memory locations at a time--usually on hardware-set boundaries. So, if you really, really want to overwrite a byte, you must erase a "block" of bytes inclusive of the desired byte. If you care about the contents of those other bytes, you must save them somewhere else before erasing, and if you want those other bytes to be back where they were, you must copy them back after the erase.

Exam Rules

You must complete the academic integrity statement prior to taking this exam. If you have not already completed and submitted the statement, please complete it and submit it along with your exam answers.

The exam answers are due at 5pm on Monday, November 6. You may submit postscript or pdf files (mail to rguy@cs.ucla.edu), or hardcopy at my office (3809 Boelter) or in my mailbox (3532-J). No handwritten answers, please--with the exception of diagrams that are too messy to do online.

This exam is open books, notes, libraries, archives, internet, etc. You are free to consult any static resource. Fellow class members, other students (UCLA or otherwise), faculty, friends (or enemies), etc., are NOT to be involved in any way. In your answers, you do not need to make explicit bibliogrpahic-style references to class-supplied material, but if you rely on other resouces, please indentify them.

Please limit each total answer to about 500 words (if a question has a multi-part answer, allocate the 500 words accordingly). It's OK to stray above 500, but don't get anywhere near 1,000 ! It is often a good idea to prepare a "complete" answer without regard to the word limit, and then carefully edit your answer down to meet the limit.

You are required to answer each question.

Exam Questions

One

You have been hired as an outside consultant on a JPL project that will launch a geo-synchronous earth orbiting satellite with an expected lifetime of 25 years. No physical maintenance of the satellite components is expected to be possible, given it's orbital altitude of 23,000 miles (100 times higher than current shuttle flights). The tasks expected to execute on the satellite are not real-time tasks. The in-house team has made a proposal regarding the computer system that will support all satellite functions (control, communications, other tasks). Key elements of their proposal include:
  1. Dual components, including CPU, bus, ROM, RAM, flash memory.

  2. Monolithic OS structure, with OS stored in ROM.

  3. RAM will be used for task execution, etc.

  4. Flash memory (see note below) is reserved use by a standard Berkeley-style "fast file system."

Please comment on their proposal, taking special note of the importance of reliability and flexibility requirements of a system that will receive no physical maintenance, but whose functionality requirements are likely to change over its 25-year lifetime. Specific issues to address, at a bare minimum, are whether the hardware and its proposed utilization are appropriate and if the proposed OS and FS methodologies are well-matched to the needs of the system.

[Note that flash memory has an unusual erase/write/read cycle: it takes about one second to erase a memory location (usually done in a "block" granularity, on the order of a kilobyte or more) prior to writing the location (writing is done a byte at a time); read and write times are comparable to RAM--usually in the tens of nanoseconds.]

Two

You have been hired as a consultant to the senior systems architect on a project which is designing a global, continuous (24 hours/day, 7 days/week) stock market. The market supports 10,000 brokers scattered around the world. Each broker provides "sell" and "buy" offers; the system's primary task is to match sell and buy offers, and ensure that both buyer and seller are aware of the (irrevocable) match. Note that this market manages the transfer of a few trillion dollars a day, so reliability is important. Provide complete responses to each of the following three sub-tasks:
  1. Argue that a centralized solution is essential.

  2. Argue that a distributed solution is required. (Yes, this is the exact opposite of #1 !)

  3. What specific distributed systems technologies are important in #2 above, and why?

Three

While network transparency is now generally considered an important principle, it hasn't always been so highly esteemed. Pretend that you have been asked to make a short presentation entitled, "Resolved: Network Transparency is a BAD idea." What are the important points you will make?

CS239 Home | Course Overview | Weekly Material | CS Dept | UCLA


(c)2000 Richard Guy
For information about these pages, contact Richard Guy.