Certainly, let's walk through these calculations step by step:
Provided details:
Data transfer rate = 3 MB/sec
Controller overhead = 1 ms
Rotational rate = 5700 RPM
Seek time = 12 ms
Sector size = 512 bytes
a. Time taken for one complete rotation of the disk:
The formula for computing the time taken for one complete rotation (T) in milliseconds is:
T =60,000 / Rotational rate in RPM
T= 60,000 / 5700
T≈ 10.53 milliseconds
b. Time taken for the necessary sector to rotate under the disk head:
For a given rotational speed, the time taken for the required sector to rotate under the disk head can be
calculated using:
Time per revolution =1 / Rotational rate in RPM
Time per revolution= 1 / 5700
Time per revolution ≈0.0001754 minutes
So, there is 60 sec in a 1 minute when converted to milliseconds:
Time per revolution ≈0.0001754*60*1000
Time per revolution≈10.52 milliseconds
c. Time taken to transfer data from disk to the host:
With the data transfer rate of 3 MB/sec and the sector size of 512 bytes, the time taken to transfer one
sector can be calculated as follow
Time per sector = sector size/ data transfer rate
Time per sector = 512/3×10^6 seconds
Time per sector ≈0.0001707 seconds
Time per sector ≈0.1707 milliseconds
d. Total access time for a disk with a size of 512 bytes/sector:
The total access time includes several components:
Seek time: 12 ms
Rotation latency: 10.52 ms (average time for the required sector to rotate under the disk head)
Transfer time: 0.1707 ms (time taken to transfer data from disk to host)
Controller overhead: 1 ms
Therefore,
Total access time ≈ 23.69 milliseconds
In summary:
a. Time for one complete rotation of the disk: ~10.53 milliseconds
b. Time for the required sector to rotate under the disk head: ~10.52 milliseconds
c. Time to transfer data from disk to host: ~0.17 milliseconds
d. Total access time for a 512-byte sector: ~23.69 milliseconds