35 votes 35 votes Suppose the time to service a page fault is on the average $10$ milliseconds, while a memory access takes $1$ microsecond. Then a $99.99\%$ hit ratio results in average memory access time of $1.9999$ milliseconds $1$ millisecond $9.999$ microseconds $1.9999$ microseconds Operating System gatecse-2000 operating-system easy virtual-memory + – Kathleen asked Sep 14, 2014 • edited Jun 25, 2018 by kenzou Kathleen 18.9k views answer comment Share Follow See all 4 Comments See all 4 4 Comments reply Rajesh Raj commented Oct 29, 2016 reply Follow Share #help https://gateoverflow.in/77662/self_doubt 1 votes 1 votes set2018 commented Jul 7, 2017 reply Follow Share effective memory access time = miss rate*(service time+memory acess time) +hit rate*memory access time . 4 votes 4 votes Lakshman Bhaiya commented Dec 24, 2018 i edited by Lakshman Bhaiya Dec 24, 2018 reply Follow Share From the above formula $p=$miss rate$,1-p=$hit rate$,ma=$memory access time$,ps=$page fault time $(or)$ service time $EMAT=p(ps+ma)+(1-p)\times ma$ $EMAT=p(ps)+p(ma)+ma-p(ma)$ $EMAT=p(ps)+ma$ Put the values $p=\frac{0.001}{100}=0.0001=1\times 10^{-4}=10^{-4},ps=10\times 10^{-3}sec,ma=10^{-6}sec$ we get $EMAT=10^{-4}(10\times10^{-3}sec)+10^{-6}sec$ $EMAT=10^{-4}\times(10^{-2}sec)+10^{-6}sec$ $EMAT=10^{-6}sec+10^{-6}sec$ $EMAT=1\mu sec+1\mu sec$ $EMAT=2\mu sec$ please correct me if I'm wrong$?$ 12 votes 12 votes shashankrustagi commented Jan 5, 2021 reply Follow Share lakshman bro, you are not wrong at all Even the formula that you are deriving na it is already there on internet time = memory access time + page fault rate(page fault service time) your answer is correct 1.99999 $\mu s$ is nearly equal to 2 $\mu s$ 1 votes 1 votes Please log in or register to add a comment.
Best answer 55 votes 55 votes Since nothing is told about page tables, we can assume page table access time is included in memory access time. So, average memory access time $= .9999 \times 1 + 0.0001 \times 10,000$ $= 0.9999 + 1$ $= 1.9999$ microseconds Correct Answer: $D$ Arjun answered Dec 14, 2014 • edited May 22, 2019 by Naveen Kumar 3 Arjun comment Share Follow See all 16 Comments See all 16 16 Comments reply Show 13 previous comments ayushsomani commented Oct 19, 2019 reply Follow Share @srestha I mean we don't even think about Page tables. 0 votes 0 votes Roseju commented Dec 2, 2019 reply Follow Share why 1000*10? 0 votes 0 votes ananya_23 commented Dec 15, 2023 reply Follow Share They have converted everything in terms of microseconds. 1 microsecond = 10^3 millisec. And it's given in question that s=10 millisec so if we convert it to microseconds, it's gonna be 10 *10^3 microseconds. 0 votes 0 votes Please log in or register to add a comment.
8 votes 8 votes p=miss rate, 1−p=hit rate, ma=memory access time, ps=page fault time (or) service time EMAT = p(ps+ma)+(1−p)×ma = p(ps)+p(ma)+ma−p(ma) = p(ps)+ma Given Values: p = $\frac{0.001}{100}$ = $10^{-4}$, ps = 10×$10^{-3}$ sec, ma=$10^{-6}$ sec EMAT = $10^{-4}$x(10×$10^{-3}$)+$10^{-6}$ sec EMAT = $10^{-4}$×($10^{-2}$)+$10^{-6}$ sec EMAT = $10^{-6}$+$10^{-6}$ sec EMAT = 1+1 μsec EMAT = 2 μsec So correct answer is D nadeshseen answered Jul 28, 2019 nadeshseen comment Share Follow See all 2 Comments See all 2 2 Comments reply Subhajit Panday commented May 31, 2020 reply Follow Share Please correct if i am mistaken , Page Fault service time itself includes accessing specific page from the process and then loading in the main memory and updating the page table , so explicitly we should not consider memory access time though in this case we are almost close to the right answer. The right formula p-miss rate EMAT = p(ps)+(1−p)×ma PS- If its memory hit , we check the page table ,get access to the frame no and go to the respective frame in main memory ,since page table accesss time is not given in ques ,it is assumed "Ma" ( memory access time ) includes both the access time 1 votes 1 votes nadeshseen commented Sep 7, 2020 reply Follow Share Yeah, you are right. In galvin also they have said the same thing and in the question below also they are using the same concept. https://gateoverflow.in/3500/gate2007-it-58 1 votes 1 votes Please log in or register to add a comment.
2 votes 2 votes CAN ANYONE TELL ME WHERE AM I WRONG Step 1: memory read to access the page table (1 micro second) case 1) frame number found -> second memory access to access the desired page from memory (1 microsecond) case 2) frame number not found -> page fault -> service the page fault (10000 microseconds) Step 2: (.9999*(first memory access time + second memory access time)) + (.0001*(first memory access time + time to service page fault)) = (.9999*2)+(.0001*10001) =2.9999 micro seconds Danish answered Dec 14, 2014 Danish comment Share Follow See all 2 Comments See all 2 2 Comments reply Arjun commented Dec 14, 2014 reply Follow Share You are not wrong. But question doesn't say anything about page tables so we can assume nearly 100% TLB hit or that page table access time is also counted as part of memory access time given. (If 2 level paging is used we will need 2 page table accesses, so we can't assume a memory access for a page table access every time) 5 votes 5 votes Danish commented Dec 14, 2014 reply Follow Share Thanks !!! 0 votes 0 votes Please log in or register to add a comment.
1 votes 1 votes option d abhishekmehta4u answered Mar 23, 2019 abhishekmehta4u comment Share Follow See all 0 reply Please log in or register to add a comment.