Skip to content
Official PYQ · 2015

GATE CS 2015 Set 1 Q48 — I/O Scheduling

Explain with AI
Consider a disk pack with a seek time of 44 milliseconds and rotational speed of 1000010000 rotations per minute (RPM). It has 600600 sectors per track and each sector can store 512512 bytes of data. Consider a file stored in the disk. The file contains 20002000 sectors. Assume that every sector access necessitates a seek, and the average rotational latency for accessing each sector is half of the time for one complete rotation. The total time (in milliseconds) needed to read the entire file is__________________
View worked solution

Answer: 14020

To find the total time needed to read the entire file, we need to calculate the time required to access a single sector and then multiply it by the total number of sectors (20002000).

For each sector access, the total time consists of three components:

Total Time per Sector=Tseek+Trotational+Ttransfer\text{Total Time per Sector} = T_{\text{seek}} + T_{\text{rotational}} + T_{\text{transfer}}

Step 1: Calculate the Rotational Time

The disk rotates at 1000010000 RPM (rotations per minute).

Time for one complete rotation (TrevT_{\text{rev}}):

Trev=60 seconds10000=60000 ms10000=6 msT_{\text{rev}} = \frac{60 \text{ seconds}}{10000} = \frac{60000 \text{ ms}}{10000} = 6 \text{ ms}

Step 2: Calculate the Average Rotational Latency

The average rotational latency (TrotationalT_{\text{rotational}}) is half of the time for one complete rotation:

Trotational=12×6 ms=3 msT_{\text{rotational}} = \frac{1}{2} \times 6 \text{ ms} = 3 \text{ ms}

Step 3: Calculate the Sector Transfer Time

Since there are 600600 sectors per track, the time to read one sector (TtransferT_{\text{transfer}}) is the time for one full rotation divided by the number of sectors per track:

Ttransfer=6 ms600=0.01 msT_{\text{transfer}} = \frac{6 \text{ ms}}{600} = 0.01 \text{ ms}

Step 4: Calculate the Total Time for One Sector

Given that the seek time (TseekT_{\text{seek}}) is 44 ms:

Total Time per Sector=4 ms+3 ms+0.01 ms=7.01 ms\text{Total Time per Sector} = 4 \text{ ms} + 3 \text{ ms} + 0.01 \text{ ms} = 7.01 \text{ ms}

Step 5: Calculate the Total Time for the Entire File

The file contains 20002000 sectors, and every sector access requires a seek:

Total Time=2000×7.01 ms=14020 ms\text{Total Time} = 2000 \times 7.01 \text{ ms} = 14020 \text{ ms}

Thus, the total time needed to read the entire file is 14020 milliseconds.

Free practice · Your answers on this page are not saved.

Published
Report a correction
Keep exploringMore I/O Scheduling questions