GATE CSE 2023 Q57: LRU page faults for column-wise access of int D[128][128]
- Operating System
- 2 marks
- NAT
- No negative marking
Question
Consider the following two-dimensional array D in the C programming language, which is stored in row-major order:
int D[128][128];
Demand paging is used for allocating memory and each physical page frame holds 512 elements of the array D. The Least Recently Used (LRU) page-replacement policy is used by the operating system. A total of 30 physical page frames are allocated to a process which executes the following code snippet:
for (int i = 0; i < 128; i++)
for (int j = 0; j < 128; j++)
D[j][i] *= 10;The number of page faults generated during the execution of this code snippet is _______.
Try it: numerical answer: type the value
Show answer and explanation
Answer: 4096 (official GATE 2023 final answer key)
Concept used: Column-wise traversal of a row-major array touches a new page every few rows; LRU with fewer frames than pages thrashes.
First step: One page holds 4 rows, so the array spans 32 pages; see what LRU with 30 frames does when one column sweeps all 32 pages.
Full step-by-step solution
Detailed working, common mistakes and linked mock tests will be available with a free GATEiit account. Log-in is coming soon.
Share this question
Source: official GATE 2023 CS question paper and final answer key, organised by IIT Kanpur. Question paper · Answer key
More Operating System PYQs
- 2026 Session 1 · Q29False statements about deadlocks
- 2026 Session 1 · Q35Minimum resource instances for deadlock freedom (5 processes, max 2)
- 2026 Session 1 · Q59Disk transfer time for random sectors on tracks 5, 12, 7
- 2026 Session 1 · Q63Number of printf calls with fork, continue and break
- 2026 Session 1 · Q64Average FCFS waiting time for alternating A and C processes
- 2026 Session 2 · Q23CPU scheduling algorithm that cannot be preemptive