Academic Integrity: tutoring, explanations, and feedback — we don’t complete graded work or submit on a student’s behalf.

3. (a) What is the average time to read or write a 512-byte sector for a typical

ID: 3547531 • Letter: 3

Question

3. (a) What is the average time to read or write a 512-byte sector for a typical disk rotating at 7200 RPM?


The advertised average seek time is 8ms, the transfer rate is 20MB/sec, and the controller overhead is


2ms. Assume that the disk is idle so that there is no waiting time.


(b) A program repeatedly performs a three-step process: It reads in a 4-KB block of data from disk, does


some processing on that data, and then writes out the result as another 4-KB block elsewhere on the disk.


Each block is contiguous and randomly located on a single track on the disk. The disk drive rotates at


7200RPM, has an average seek time of 8ms, and has a transfer rate of 20MB/sec. The controller overhead


is 2ms. No other program is using the disk or processor, and there is no overlapping of disk operation


with processing. The processing step takes 20 million clock cycles, and the clock rate is 400MHz. What is


the overall speed of the system in blocks processed per second assuming no other overhead?

Explanation / Answer

8ms+(0.5/(7200/60))*1000 ms+0.5KB/20.0MB/s+2ms=8+4.15+0.025+2=14.175ms.

2)

Step 1: Read the data. First we need the average rotational delay:

0.5/7200RPM = 4.167ms.

Next calculate the time to read 4-KB:

4-KB/(20-MB/s) = 0.195ms.

Finally, calculate the total read time:

Time = rotational delay + seek time + overhead + transfer time

= 4.167ms + 8ms + 2ms + 0.195ms = 14.362ms

Step 2: Process the data.

20 million cycles/(400MHz) = 50ms.

Step 3: Write the data to disk. This takes the same time as the read.

So, it takes 78.7 ms to process 1 block, i.e. 12.7 blocks per second.

Hire Me For All Your Tutoring Needs
Integrity-first tutoring: clear explanations, guidance, and feedback.
Drop an Email at
drjack9650@gmail.com
Chat Now And Get Quote