retagged by
9,734 views
7 votes
7 votes
A program of size 64MB is stored on disk which supports an average seek time of 30ms and rotation time of 20ms. Page size is 4MB and track size is 32MB. If the pages of the program are contiguously placed on disk, then the total time required to load the program from disk in ms is _____

 

Given answer: 120
retagged by

7 Answers

Best answer
13 votes
13 votes

File:Disk-structure2.svg
where:
(A) Track
(B) Geometrical sector
(C) Track sector
(D) Cluster


Total number of tracks this program takes = $\frac{64MB}{32MB} = 2$

Program has to be loaded from the disk, it will happen in the following way:

  1. Head will move at the beginning of the $1^{st}$ track.
    To move to that track on the disk it will take 1 Seek Time, and then to reach at the start of that track it will let the disk to rotate and this on an average takes up $\frac{1}{2} \times \text{Rotation Time}$. Then it will read the track and simultaneously transfer data which will take up 1 Rotation Time(in one rotation a head can read a single track)
    so, till now $\text{1 Seek Time} + \frac{1}{2} \times \text{Rotation Time} + \text{1 Rotation Time}$ has passed.

     
  2. After reading $1^{st}$ track it will move to the second track and to do that same process will be followed which will take exactly the same time as in first case.
     

Hence, 
$\begin{align*} \text{Time taken to load} &= 2 \times \left(\text{1 Seek Time} + \frac{1}{2} \times \text{Rotation Time} + \text{1 Rotation Time} \right )\\ &= 2 \times \left(\text{30ms} + \frac{1}{2} \times \text{20ms} + \text{20ms} \right )\\ &= 120ms \end{align*}$

selected by
5 votes
5 votes
seek time 30 ms

rotational latency 20/2 =10 ms

32 MB covers in 20 ms

total transfer time(30+10+20 )=60 ms

No. of tracks in program 64/32 =2

So, for 16 pages transfer time is 60*2= 120MB
edited by
2 votes
2 votes

if the pages are continous so only two seek time will be required one when we will start to read and after that when we will change the track to read the remaining 32 MB of data.

rotational letency = 1/2 rotation time =but thats the average one. here we will consider the full because it is reading the full track.

transfer time =

20 ms = read one track

20 ms= 32MB

1byte= $\frac{20}{32MB}$

64 MB = $\frac{20*64MB}{32MB}$= 40ms

total time will be 32+32+20+20+40 =144 ms

edited by
1 votes
1 votes

Pages are continuously placed on disk- so we need seek time and avg. rotational latency only for first page. So, the sequence of data fetch is like follows:

  1. seek to the track.
  2. rotate to sector
  3. continue rotation until all data is retrieved - since page size is 4MB and track size is 32MB we do not need to move to next track assuming page is not split across tracks.

After the first page access, for every consecutive page access we need only rotational delay but this delay is not average rotational delay- but delay in moving to next sector containing the next page. So, it has to rotate 4/32 of a full rotation taking 20/8 ms.  So, we get

30 + 10 + 2.5 * 16 + 20/8 * 15 = 117.5 ms

edited by
Answer:

Related questions

0 votes
0 votes
0 answers
1
Na462 asked Jan 12, 2019
944 views
Consider a typical disk that transfers at a rate of 30 MBps and rotates at 5000 RPM. The average seek time of disk is twice average rotation delay and assume no controlle...
0 votes
0 votes
2 answers
2
$ourav asked May 18, 2016
5,874 views
What is the average access time for transferring 512 bytes of data with the following specification :Avg. seek time = 5msDisk Rotation = 6000rpm, 40kbpsController Overhea...
3 votes
3 votes
1 answer
3
khushtak asked Jan 6, 2016
4,425 views
Consider a disk with a rotational rate of 10,000 RPM, an average seek time of 8 ms, and on average of 500 sectors per track. Estimate the average time to read a random se...
0 votes
0 votes
2 answers
4
Na462 asked Aug 4, 2018
1,133 views
Ans. 52 msec