[爆卦]Inverted page table是什麼?優點缺點精華區懶人包

為什麼這篇Inverted page table鄉民發文收入到精華區:因為在Inverted page table這個討論話題中,有許多相關的文章在討論,這篇最有參考價值!作者ok8752665 ()看板Grad-ProbAsk標題[理工] OS Inverted Pag...


想問說

為什麼這種方法可以縮減page table size

即使有多個page table其entry總數也比實體記憶體的entry少吧

我哪裡搞錯了嗎

--
※ 發信站: 批踢踢實業坊(ptt.cc), 來自: 114.46.77.184 (臺灣)
※ 文章網址: https://www.ptt.cc/bbs/Grad-ProbAsk/M.1569072014.A.B23.html
bitetw: 如果每個process的page table會比physical memory小的話 09/21 22:19
bitetw: 就不用virtual memory 了吧 09/21 22:19
bitetw: 啊抱歉以上有誤xd 09/21 22:34
ok8752665: 目前上課講的是main memory 應該還跟virtual沒關係吧 09/21 22:34
DLHZ: page table每個process都一個 inverted的話整個系統只有一個 09/21 23:50
DLHZ: 所以會說inverted無法share memory 09/21 23:50
KaryuuIssen: Page table是Lookup table entry總數是固定的 09/22 04:18
KaryuuIssen: 總大小隨Process數目等比例增長 09/22 04:19
ok8752665: 所以 一般的page table裡面可能會有一堆空白欄位嗎 09/22 08:04
ok8752665: @DLHZ 你的意思是藉由去除share memory特性來降低table 09/22 09:21
ok8752665: 大小嗎 09/22 09:21
DLHZ: 原本每個process都拿一個table process一多自然table就開始 09/22 11:15
DLHZ: 佔空間了 如果用inverted那就是用一個table記錄哪些記憶體被 09/22 11:15
DLHZ: 那個process拿去 但是當然就只能記錄一個 所以就算其他proce 09/22 11:15
DLHZ: ss要用同樣的內容也沒辦法 只能自己再找個記憶體搬進去 09/22 11:15
ok8752665: 所以各個table大小是一樣的嗎 我是想說每個process的en 09/22 12:11
ok8752665: try都對到一個memory的frame 所以總數不會超過那張大ta 09/22 12:11
ok8752665: ble 09/22 12:11
ok8752665: http://i.imgur.com/plGHFkR.jpg 像是這樣 沒memory sh 09/22 13:27
ok8752665: are的情況下 左邊的entry小於等於右邊的entry數 09/22 13:27
DLHZ: 這邊不太確定 process的page table大小應該是取決於binding 09/22 13:27
DLHZ: 時分配的大小 給的大一點page table就要大一點 09/22 13:27
DLHZ: 大部分都有提到是最大的size怎麼計算但好像沒特別說到底多大 09/22 13:30
ok8752665: 好ㄅ 09/22 15:04
KaryuuIssen: 知道Virtual address是幾bit 知道Page size多大 09/22 17:28
KaryuuIssen: 自然就可推得Page table的entry數 09/22 17:28
KaryuuIssen: Page table裡面可能會有一堆無效欄位(valid bit=0) 09/22 17:29
KaryuuIssen: 代表Page上的資料不在記憶體中 09/22 17:30
ok8752665: 喔喔 忘了有些不會全部載進去了 謝謝 09/22 17:49

你可能也想看看

搜尋相關網站