Assignment 8, due July 15

Part of the homework for 22C:50, Summer 2003
by Douglas W. Jones
THE UNIVERSITY OF IOWA Department of Computer Science

 

  1. That old 14-inch diameter disk I showed to the class had 20 recording surfaces, 400 cylinders and 24 sectors per track. Each sector was 512 bytes, and the drive spun that disk at 20 revolutions per second. The seek time from the innermost track to the outermost track was about 1/10 second. Seeks involved constant acceleration for half the seek, and then constant deceleration for the other half of the seek, so seeking 400 cylinders took twice as long as seeking 100 cylinders.

    Part a) What is the capacity of that disk in bytes.

    Part b) What was the approximate data transfer rate, while reading data, in bytes per second? Your answer will be approximate because you don't know the size of the prefix and suffix on each sector.

    Part c) What was the rotational latency time?

    Part d) What was the approximate time to seek from one track to the adjacent track? (I know you've had calculus! You can do the math!) In this case, your answer will be approximate because the data I gave for the maximum seek time was only approximate.

  2. The queues used for data to and from a low performance device such as a keyboard or serial port are ususally implemented using bounded buffers. The queues used for disk and tape interfaces are usually implemented using linked lists of buffers. Why?

  3. The queues used for low performance devices and for sequential high performance devices such as tape drives and network interfaces are almost always simple FIFO queues. For disks, we use far more complex scheduling disciplines to determine the order in which elements in the queue are dequeued. What is the advantage of using disciplines more complex than FIFO for disk queues?