Question Paper Problems:
Feb 2021
Consider a magnetic disk drive with 8 surfaces, 512 tracks per surface, and 64 sectors per track.
Sector size is 1 KB. The average seek time is 8 ms, the track-to-track access time is 1.5 ms, and the
drive rotates at 3600 rpm. Successive tracks in a cylinder can be read without head movement.
a. What is the disk capacity?
b. What is the average access time? Assume this file is stored in successive sectors and tracks of
successive cylinders, starting at sector 0, track 0, of cylinder i.
c. Estimate the time required to transfer a 5-MB file.
d. What is the burst transfer rate?
a. What is the disk capacity?
To calculate the total disk capacity, we need to multiply the number of surfaces, tracks per
surface, sectors per track, and the sector size.
Number of surfaces = 8
Number of tracks per surface = 512
Number of sectors per track = 64
Size of each sector = 1 KB (1024 bytes)
Disk Capacity = number of surfaces * tracks per surface *sectors per track
* sector size.
b. What is the average access time?
The average access time includes the average seek time, rotational latency, and the time to
transfer a sector.
1. Seek Time: The average seek time is given as 8 ms.
2. Rotational Latency: The disk rotates at 3600 rpm, which means the time for one full
rotation is:
3. Transfer Time: The transfer time for 1 sector is calculated as:
The total average access time is:
Average Access Time=Seek time+ Rotational latency+ Transfer time
for 1 sector
c. Estimate the time required to transfer a 5-MB file.
First, calculate how many sectors are needed to transfer 5 MB of data:
Next, calculate the total transfer time for the 5 MB file. Since the file is stored in successive
sectors, we only need to account for the transfer time per sector:
d. What is the burst transfer rate?
The burst transfer rate is the rate at which data can be transferred from the disk once the head
is positioned and reading begins.
July 2023
A computer has a two-level cache. Suppose that 60% of the memory references hit on the first level
cache, 35% hit on the second level, and 5% miss. The access times are 5 nsec, 15 nsec, and 60 nsec,
where the times for level 2 cache and memory start counting at the moment it is known that they are
needed (e.g., a level 2 cache access does not even start until the level 1 cache miss occur). What is the
average access time?
Given data:
Hit rate at Level 1 (L1): 60% = 0.60
Hit rate at Level 2 (L2): 35% = 0.35
Miss rate (to main memory): 5% = 0.05
Access time for L1 cache: 5 ns
Access time for L2 cache: 15 ns (starts after L1 miss)
Access time for main memory: 60 ns (starts after L2 miss)
Formula for Average Access Time:
The average access time Tavg can be calculated as the weighted sum of the access times at
each level:
Tavg =
(Hit rate at L1)×(L1 access time)+(Miss rate at L1)×
[(Hit rate at L2)×(L1 access time+L2 access time)+(Miss rate at L2)×
(L1 access time+L2 access time+Memory access time)]
Aug 2022
A computer has a two-level cache. Suppose that 70% of the memory references hit on the
first level cache, 25% hit on the second level, and 5% miss. The access times are 50 nsec, 100
nsec, and 600 nsec, where the times for level 2 cache and memory start counting at the
moment it is known that they are needed (e.g., a level 2 cache access does not even start until
the level 1 cache miss occur). What is the average access time?
Given data:
Hit rate at Level 1 (L1): 70% = 0.70
Hit rate at Level 2 (L2): 25% = 0.25
Miss rate (to main memory): 5% = 0.05
Access time for L1 cache: 50 ns
Access time for L2 cache: 100 ns (starts after L1 miss)
Access time for main memory: 600 ns (starts after L2 miss)
Formula for Average Access Time:
The average access time Tavg can be calculated as the weighted sum of the access times at
each level:
Tavg =
(Hit rate at L1)×(L1 access time)+(Miss rate at L1)×
[(Hit rate at L2)×(L1 access time+L2 access time)+(Miss rate at L2)×
(L1 access time+L2 access time+Memory access time)]
June 2024
Consider a system with 2 level cache. Access times of Level 1 cache, Level 2 cache and main
memory are 1 ns, 10 ns, and 500 ns respectively. The hit rates of Level 1 and Level 2 caches
are 0.8 and 0.9, respectively. What is the average access time of the system ignoring the search
time within the cache?
Given data:
Access time for Level 1 (L1) cache: 1 ns
Access time for Level 2 (L2) cache: 10 ns
Access time for main memory: 500 ns
Hit rate at Level 1 (L1): 0.8
Hit rate at Level 2 (L2): 0.9
Formula for Average Access Time:
The average access time TavgT_{avg}Tavg is the weighted sum of the access times for each
case (L1 hit, L2 hit after L1 miss, and main memory access after both L1 and L2 miss):
Tavg = L1_Hit_Rate×L1_Access_Time+
(1−L1_Hit_Rate)×(L2_Hit_Rate×L2_Access_Time+
(1−L1_Hit_Rate)×( (1−L2_Hit_Rate)×Memory_Access_Time)