GATE - 2018 | OS | Consider a process executing on an operating system that uses demand paging

GATE - 2018 | OS | Consider a process executing on an operating system that uses demand paging
Posted on 08-02-2022

GATE - 2018 [Operating System]

Question:

Consider a process executing on an operating system that uses demand paging. The average time for a memory access in the system is M units if the corresponding memory page is available in memory and D units if the memory access causes a page fault. It has been experimentally measured that the average time taken for a memory access in the process is X units.

Which one of the following is the correct expression for the page fault rate experienced by the process?

A

(D-M)/(X-M)

B

(X-M)/(D-M)

C

(D-X)/(D-M)

D

(X-M)/(D-X)

    

Solution:

Let ‘P’ be page fault rate then, average memory access time
X = (1 - P)M + D × P
X = M ∙ PM + DP
(X - M) = P(D - M)
⇒ P = (X - M) / (D - M)

------------------------------------

Given, average time for a memory access = M units if page hits, and average time for a memory access = D units if page fault occurred.

And total/experimental average time taken for a memory access = X units.

Let page fault rate is p. Therefore,

Average memory access time = ( 1 – page fault rate) * memory access time when no page fault + Page fault rate * Memory access time when page fault

→ X = (1 – p)*M + p*D = M – M*p + p*D

→ X = M + p(D – M)

→ (X – M) = p(D – M)

→ p = (X – M) / (D – M)

 

 

 

Thank You