The Gateway to Computer Science Excellence
+27 votes

If an instruction takes $i$ microseconds and a page fault takes an additional $j$ microseconds, the effective instruction time if on the average a page fault occurs every $k$ instruction is:

  1. $i + \dfrac{j}{k}$

  2. $i +(j\times k)$

  3. $\dfrac{i+j}{k}$

  4. $({i+j})\times {k}$

in Operating System by Veteran (52.2k points)
recategorized by | 4.2k views
T = [ (1)(i+j) + (k-1)(i) ] / k = (ik + j)/k

8 Answers

+32 votes
Best answer

Page fault rate $=\dfrac{1}{k}$
Page hit rate $=1-\dfrac{1}{k}$
Service time $=i$
Page fault service time $= i+j$

Effective memory access time,

$\quad =\dfrac{1}{k}\times (i+j)+\left(1-\dfrac{1}{k}\right)\times i$




So, option (A) is correct.

by Junior (569 points)
edited by
thats the beauty of gate .... nice ans ...

since each instruction takes i microseconds and a page fault occurs after k instructions. so after ki microseconds, 1 page fault occurs.

in ki time, 1 page fault

in 1 time, i/ki page fault

so doesn't this make the rate as 1/ki  ???

My question is here.

Okay then : total time to execute k instructions= ik + j

                         so effective instruction time = (ik+j)/k

                                                                       = i+j/k     Ans

I think 

page fault takes an additional $j$

making the access hierarchical. Right? Also,  there seems to be no option for simultaneous... 

Yes..." page fault takes an additional j microseconds"  makes it hierarchical acesss
+12 votes
Here, given that On an average page fault occurs at every 'k' seconds. So, probability of getting a page fault is (1/k).


Effective Instruction Time = Normal instruction execution Time + Average Page Fault Service Time

i.e. Avg Page Fault Service Time = prob. of getting page fault * page fault service time =(1/k )* j


so its "i + (1/k)*j".
by (101 points)
+11 votes

Lets take a example

no of instruction =6

i=4(Normal instrction execution time)

j=2(Additional time incase of page fault)

k=3(Page fault occurs on every kth instruction)

Total time required=4+4+(4+2)+4+4+(4+2)=28

Average time=28/6=4.66

Now substitute the i,j,k values in options 


so A is the answer

by Active (2.9k points)
Good One

+5 votes
One more way could be. Let us we have 100 instruction then page fault will occur 100/k times. So

Total execution time  = 100*i +  (100/k)*j

So avg execution time  = (Total execution time)/(Total number of instruction) = i + (j/k).


Answer is (A) Part.
by Boss (13.6k points)
+4 votes
ans a)
by Loyal (5.2k points)
+3 votes

Consider k instructions: 

instruction # 1 2 3 ... k
time i i i ... i+j

Effective instruction time = (i*k + j)/k = i + j/k.

by Active (1.5k points)
+1 vote
One more way we can do is as follows


EMAT= m+p(ps)...{y=mx+c}



by Active (4.2k points)
+1 vote
1 instruction takes i ms.

k instructions will take k*i ms.

1 page fault in every k instructions. Page Fault Service Time is j ms.


Total time required to execute k instructions is (k*i+j) ms.


so here ,

Effective instruction time = (k*i+j)/k

i.e, i + j/k
by (427 points)

Related questions

Quick search syntax
tags tag:apple
author user:martin
title title:apple
content content:apple
exclude -tag:apple
force match +apple
views views:100
score score:10
answers answers:2
is accepted isaccepted:true
is closed isclosed:true
50,741 questions
57,257 answers
104,731 users