Homework #6

CMSC 611, Fall 1998

Assigned: Tuesday, December 1, 1998

Due Tuesday, December 8, 1998 (in class)

  1. Problem 6.5 from the text.
  2. Problem 6.7 from the text.
  3. You’re the I/O system architect for a computer company building high-speed file servers. The average request size is 16 KB (assume the data is all read from the same track). Assume the average seek distance is 30 tracks.
    The CPU you are using runs at 500 MIPS and has a backplane bus capable of transferring 100 MB/s. The operating system needs 50,000 instructions to service a single 16 KB request. The CPU costs $25,000 and comes with a backplane bus with 6 slots.
    You can choose from fast and slow 3.5" disks as described in the following table. Disks must be connected to disk controllers that sit in the backplane bus.
    Disk size Rotation rate Seek (ms)
    min/avg/max
    Tracks Surfaces Sectors per track Bytes per sector Cost
    3.5" 5400 RPM 1/10/25 4500 6 250 512 $200
    3.5" 7200 RPM 1/6/25 6000 8 500 512 $600
    Each controller requires 2 ms to handle a single 16 KB I/O. Controllers can handle one I/O while another I/O hasn’t yet been completed (i.e., if one disk is seeking, the controller can be working on another I/O). Controllers have connections for 4 I/O buses, each of which can support 15 disk drives and transfer data at 10 MB/s. Each controller costs $2000, but I/O buses are free (the disk manufacturer provides the necessary cables with each disk).
    1. How long does a single 16 KB request take to service from start to finish? Assume that time spent in different parts of the system is not overlapped.
    2. What is the maximum capacity (in GB) of a system built from these parts and using only a single CPU and backplane bus?
    3. What is the maximum data rate (in MB/s) of a system built from these parts and using only a single CPU and backplane bus?
    4. How expensive is the cheapest system with a minimum capacity of 20 GB and minimum data rate of 1000 requests per second?
  4. Tape libraries were invented as archival storage, and thus have relatively few readers per tape. Assume you have a system that can hold 6000 tapes, each of which stores 9 GB of data. Tapes can be read at 9 MB/s, and there are 8 tape readers. It takes 30 seconds to eject a tape from a reader, put it back on the shelf, and grab a new one.
    1. How long does it take to read a single tape?
    2. How long would it take to read the entire archive? This is often necessary because of advances in technology (how many 9-track tape readers are there today?...)
    3. How long does it take to find and read a 200 MB file in this archive? Assume that files are contiguously stored on tape, and that seek time is randomly distributed betweeen 0 and 60 seconds.
    4. Suppose the tapes were replaced with random access cartridges (high capacity removable magnetic storage, such as that promised by TeraStor). How long would the operation in part (c) take if seek time were 0, assuming that other parameters (load time, transfer rate) stayed the same?
  5. Problem 8.4 from the text.
  6. Problem 8.6 from the text. Note that you don't have to actually run the programs on a parallel processor - just write pseudocode for the programs and explain why they accomplish what's asked in the problem.
  7. Problem 8.8 from the text.


Last updated 16 Nov 1998 by Ethan Miller (elm@csee.umbc.edu)