Students remember access time = seek + rotation + transfer yet treat RPM as revolutions per second, use half a rotation despite an exact angle, or multiply seek time incorrectly. A random-sector read differs from best, average and worst access, while sequential access reduces repeated positioning.
Disk access time is a sequence of physical delays
A hard disk drive stores data on rotating platters. A surface has concentric tracks, each divided into sectors. Tracks at the same radius across surfaces form a cylinder. A read/write head selects a surface and seeks the required track while the platter rotates.
A logical block may span one or more sectors, so check whether the question asks for a sector, block or file. These mechanical formulas describe rotating disks, not SSDs.
For an HDD, the core sequence is:
disk service time = seek time + rotational latency + transfer time
Seek time moves the head to the required track.
Rotational latency waits for the required sector to rotate under the head.
Transfer time moves the requested bytes after the head is positioned.
Service time is not always end-to-end response time. If queueing delay or controller overhead is supplied, include it explicitly:
response time = queueing delay + controller overhead + disk service time
Include only the terms the question supplies.
Disk access time formulas must keep units visible
Keep units visible to prevent RPM conversion errors.
Quantity | Formula | Unit and meaning |
|---|---|---|
Revolution time |
| seconds per revolution |
Revolution time |
| milliseconds per revolution |
Average rotational latency |
| milliseconds, half a revolution |
One-sector transfer time |
| milliseconds per sector |
Contiguous data transfer time |
| milliseconds |
Bandwidth-based transfer time |
| seconds if bytes and bytes/s are used |
Average rotational latency is half a revolution only when the target's angular position is uniformly random. The best rotational wait is 0. The worst wait approaches one full revolution.
To convert seconds to milliseconds, multiply by 1,000. Also remember 1 KiB = 1024 bytes and RPM means revolutions per minute. If bandwidth is supplied, use data size / transfer rate. Do not also apply the sector formula unless it is only a cross-check.

Disk access time worked example for 3,000 random sectors
Q53 of the official archived GATE 2024 CS2 master paper uses 6000 RPM, a 5 ms average seek, 500 sectors per track, 512-byte sectors, and 3,000 randomly located sectors.
Random placement is the decisive assumption. Treat every sector as a separate average access, so every sector pays one seek and one average rotational wait.
One revolution takes
60,000 / 6000 = 10 ms.Average rotational latency is
10 / 2 = 5 ms.One-sector transfer time is
10 / 500 = 0.02 ms.One random-sector access takes
5 + 5 + 0.02 = 10.02 ms.All 3,000 sectors take
3,000 x 10.02 = 30,060 ms.Converting to seconds gives
30,060 / 1,000 = 30.06 s.
Seek plus average rotation already costs 10 ms per sector. For 3,000 independent accesses, about 30 seconds is plausible. A 60 ms result counts only transfer and ignores repeated positioning.
Average rotational latency is not every rotational latency
Using the same disk and one sector, the rotational component changes with the target position:
Case | Calculation | Access time |
|---|---|---|
Best |
|
|
Average |
|
|
Worst, approached |
|
|
Now suppose the required sector is exactly 90 degrees ahead after the seek. The rotational wait is known, so half a revolution would be wrong:
rotational wait = 90 / 360 x 10 = 2.5 ms
access time = 5 + 2.5 + 0.02 = 7.52 ms
Use half a revolution only when a question asks for an average or implies a uniformly random angular position. When it gives an angle or sector distance, use that exact position.
Disk performance depends on access pattern, not transfer rate alone
This 10.02 ms random access gives:
IOPS = 1000 / 10.02 = 99.8 accesses/s
useful throughput = 99.8 x 512 = 51,098 bytes/s, approximately 49.9 KiB/s
This is useful-data throughput for the one-sector workload, not the disk's advertised streaming rate.
Now simplify the same 3,000 sectors as one contiguous stream after a single positioning event. Ignore track-change overhead, so this is a teaching model, not a hardware guarantee.
Transfer spans
3,000 / 500 = 6 rotations.Transfer time is
6 x 10 = 60 ms.Total time is
5 + 5 + 60 = 70 ms.Data size is
3,000 x 512 = 1,536,000 bytes.Effective throughput is
1,536,000 / 0.07 = 21.94 MB/s, or about20.93 MiB/s.
Random I/O repeatedly pays positioning cost. A larger contiguous request pays it once and amortises it across the data. File systems and disk scheduling in OS explains how request ordering can reduce head movement, although it does not change the RPM formulas.

GATE disk access questions combine a small set of patterns
The archived 2024 CS2 paper demonstrates a random-sector numerical where placement decides how often seek and rotation are paid. Related questions can combine:
Convert RPM to one revolution and then to average latency.
Find a multi-sector or multi-track total after deciding how many positioning events occur.
Work backwards from, or compare, IOPS, throughput, best-case or worst-case time.
For timed application, the GATE Test Series is the direct practice route. For a separate COA revision topic, Addressing Modes and Instruction Formats is a useful next read, but it is not a prerequisite for disk calculations.
Disk access time traps and their repairs
Writing
60 / RPMand labelling the result milliseconds. Use60,000 / RPMwhen the required answer is in milliseconds.Taking half of RPM. First calculate one revolution's time, then halve that time for average latency.
Paying positioning cost the wrong number of times. Mark the access pattern before multiplying. Random sectors pay repeatedly; a simplified contiguous request pays once.
Using a full revolution as one sector's transfer time. Divide revolution time by sectors per track.
Mixing service time, response time, IOPS and bandwidth. List the included delays, align all units, count positioning events, and divide useful data by total elapsed time only after the access total is correct.
Disk access time short version and next step
Use this four-line method:
Find one revolution time.
Select best, average or exact rotational wait.
Compute transfer time only for the requested data.
Decide how many times each delay is paid.
The anchor result is 5 + 5 + 0.02 = 10.02 ms per random sector, so 3,000 x 10.02 ms = 30.06 s.
Use the GATE category to browse the preparation path. For sequenced COA study, GATE Guidance by Sanchit Sir is the focused next step. If you want more practice after the concept is clear, more than 40 practice questions on this subtopic are available.




