[理工] os three-level page table access time

看板Grad-ProbAsk作者 (rean)時間10年前 (2016/01/26 17:06), 編輯推噓6(6039)
留言45則, 5人參與, 最新討論串1/1
http://imgur.com/PRmHj3T
想問這題的effective memory access time 解答給的算式是 0.9*(50+50+(10+50))+0.1*(50+50+(10+50)+50)=165ns 不懂為什麼TLB hit 那邊的算法 -- ※ 發信站: 批踢踢實業坊(ptt.cc), 來自: 140.127.67.44 ※ 文章網址: https://www.ptt.cc/bbs/Grad-ProbAsk/M.1453799189.A.587.html

01/27 01:44, , 1F
每當TLB找到P之後會進入memory 的page table 抓值(p
01/27 01:44, 1F

01/27 01:44, , 2F
age table在memory中)有三級 所以抓兩次 因此50+50
01/27 01:44, 2F

01/27 01:44, , 3F
又 TLB10 + 進入memory 抓真正的data 50
01/27 01:44, 3F

01/27 09:52, , 4F
TLB hit後不是直接到memory抓值嗎?
01/27 09:52, 4F

01/27 10:03, , 5F
對TLB裡面放PPN 直接去抓frame
01/27 10:03, 5F

01/27 10:19, , 6F
所以解答TLB hit 多了兩個50是錯的囉?
01/27 10:19, 6F

01/27 10:24, , 7F
我覺得是錯的 別的學校也有類題
01/27 10:24, 7F

01/27 10:25, , 8F
都是hit算TLB+Mem access miss算(TLB)+MP+Mem access
01/27 10:25, 8F

01/27 10:25, , 9F
MP就miss penalty
01/27 10:25, 9F

01/27 10:26, , 10F
感謝o大
01/27 10:26, 10F

01/27 12:04, , 11F

01/27 12:05, , 12F
試著畫了一下 幫我看一下哪裡有誤@@
01/27 12:05, 12F

01/27 12:07, , 13F
睡了一覺腦袋變比較清醒了一點 我昨天打的是錯的XDDD
01/27 12:07, 13F

01/27 12:08, , 14F
但我覺得答案沒錯哦
01/27 12:08, 14F

01/27 12:22, , 15F
不太可能是原page no放進去TLB內 因爲它們必須先透過
01/27 12:22, 15F

01/27 12:22, , 16F
查表才能知道正確位置 若直接使用page no對照 frame
01/27 12:22, 16F

01/27 12:22, , 17F
no 可能會產生錯誤的frame no 我是這麼想的
01/27 12:22, 17F

01/27 12:23, , 18F
我也覺得答案錯,TLB hit不就是直接去mem access就好
01/27 12:23, 18F

01/27 12:23, , 19F
,為什麼還要找page table
01/27 12:23, 19F

01/27 12:42, , 20F
修正了一下自己
01/27 12:42, 20F

01/27 12:42, , 21F
的想法變這樣QQ~
01/27 12:42, 21F

01/27 13:00, , 22F
覺得兩張圖都可以 只是第二張圖用的memory更少 有誤
01/27 13:00, 22F

01/27 13:00, , 23F
請幫忙訂正 我覺得不太可能把原pageno的值放進去 fra
01/27 13:00, 23F

01/27 13:00, , 24F
me值就能正確無誤的跑出來
01/27 13:00, 24F

01/27 13:03, , 25F
我那一個pt entry的快取指到pt 我還要這快取幹嘛
01/27 13:03, 25F

01/27 13:08, , 26F
防止page size過大? 它本身還是有加快整體時間 只是
01/27 13:08, 26F

01/27 13:08, , 27F
multilevel paging 本來就會增加執行時間 更何況是l
01/27 13:08, 27F

01/27 13:08, , 28F
evel 3 雖然是真的沒有1級快啦....
01/27 13:08, 28F

01/27 13:14, , 29F
你的說法就像是:cache hit了 還要去mem搬data
01/27 13:14, 29F

01/27 13:14, , 30F
Page table才對不是page size
01/27 13:14, 30F

01/27 13:23, , 31F
我的想法是這樣沒錯呀@@ 它輸入的是原page no值 還
01/27 13:23, 31F

01/27 13:23, , 32F
是 轉換過的page no才能找到正確的frame 顯然是後者
01/27 13:23, 32F

01/27 13:23, , 33F
所以我今天第一個想法是先把轉換過的page no丟進TLB
01/27 13:23, 33F

01/27 13:23, , 34F
中 然後在題目一開始給page no轉換完在從TLB找
01/27 13:23, 34F

01/27 13:26, , 35F
然後第二個想法也可以達到目的 而且花費時間更少
01/27 13:26, 35F

01/27 14:29, , 36F
PN的值放進去如果hit的確FN的值就能正確無誤跑出來...
01/27 14:29, 36F

01/27 14:30, , 37F
TLB的運作方式計組寫比較清楚 可以看一下
01/27 14:30, 37F

01/27 14:30, , 38F
真的嗎@@?假如是了話那我錯了
01/27 14:30, 38F

01/27 15:14, , 39F
= =
01/27 15:14, 39F

01/27 16:02, , 40F
哈哈 沒辦法 g大講到我主要的核心 所以沒什麼好辯的
01/27 16:02, 40F

01/27 16:02, , 41F
01/27 16:02, 41F

01/27 17:16, , 42F
QQ
01/27 17:16, 42F

01/29 15:21, , 43F

01/29 15:22, , 44F
有人跑來問我這篇的問題 我很不好意思的跟他說我錯了
01/29 15:22, 44F

01/29 15:22, , 45F
XDD... 答案有誤沒錯
01/29 15:22, 45F
文章代碼(AID): #1MfpSLM7 (Grad-ProbAsk)