The Gateway to Computer Science Excellence
First time here? Checkout the FAQ!
x
+16 votes
3.3k views

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. $1.9999$ milliseconds
  2. $1$ millisecond
  3. $9.999$ microseconds
  4. $1.9999$ microseconds 
asked in Operating System by Veteran (59.5k points)
edited by | 3.3k views
+1

#help

https://gateoverflow.in/77662/self_doubt             

0
effective memory access time = miss rate*(service time+memory acess time) +hit rate*memory access time .

2 Answers

+30 votes
Best answer
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
answered by Veteran (358k points)
edited by
+5
can TLB hit lead to page fault ?
+10

Good question- I was too naive to say that. It won't happen normally, and in this question page fault occurs only during TLB miss meaning TLB hit cannot be more than 99.99%. But that can be assumed to be 100% for calculation purpose. Or we can even assume page table access time is included in the memory access time given here. http://stackoverflow.com/questions/6398811/can-a-tlb-hit-lead-to-page-fault-in-memory

+1
thanks !!!
0
sir,

page fault service time =  memory access time + additional overhead during page fault  or

page fault service time= additional overhead during page fault.
+3
^
page fault service time includes memory access time.
0
plz elaborate it solution ... According to formula it's (%of page miss *time to service page fault.  )+(%page hit )*(memory access time)    whole divide by 100
0
memory access time is negligible compared to page fault service time
0
Nice exp
0
Can you please explain how 10,000 is coming?
0
Please provide a reference to your statement.
0 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
answered by Active (3.9k points)
+3
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)
0
Thanks !!!


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

39,713 questions
46,750 answers
140,552 comments
58,380 users