A disk is double interleaved,
i.e., sectors are in the order 0, 3, 6, 1, 4, 7, 2, 5.
It has eight sectors of 512 bytes per track,
and a rotation rate of 300 rpm.
How long does it take to read all the sectors of a track
in order, assuming the arm is already correctly
positioned,
and 1/2 rotation is needed to get sector 0 under
the head?
What is the data rate?
Now repeat the problem for a noninterleaved disk,
i.e., sectors are in the order 0, 1, 2, 3, 4, 5, 6, 7,
with the same characteristics.
How much does the data rate degrade due
to interleaving?
Controllers may be able to read only every other block or maybe
every second block - because of the time necessar to read a disk
block, then get ready for the next block.
Skipping blocks to give the controller time to transfer data
to
memory is called interleaving.
Disk with 8 blocks per track,
without interleaving block order -
0 1 2 3 4 5 6 7
Disk with single interleaving block order -
0 4 1 5 2 6 3 7
Disk with double interleaving block order -
0 3 6 1 4 7 2 5
In which of the four i/o software layers
(Interrupt drivers, Device drivers, Device-independent
os software, and User level software) is each of the
following done.
Disk requests come to the disk driver
for cylinders 10, 22, 20, 2, 40, 6, and 38,
in that order.
A seek takes 6msec per cylinder moved.
How much seek time is needed for:
In all cases the arm is initially at 20 and moving towards track 0.
The clock interrupt handler on a certain computer requires
2 msec (including process switching overhead)
per clock tick.
The clock runs at 60Hz.
What fraction of the CPU is devoted to the clock?
Consider how a terminal works.
The driver outputs one character and then blocks.
When the character has been printed, an interrupt
occurs and a message is sent to the blocked drive,
which outputs the next character and then blocks again.
If the time to pass a message, output a character,
and block is 4msec,
does this method work well on 110 baud lines?
How about 4800 baud lines?
Last modified April 5, 1999 by mike@cs.hmc.edu