看板 Grad-ProbAsk 關於我們 聯絡資訊
※ 引述《kev72806 (想太多oo)》之銘言: : 各位好 : 關於 Page Table 相關的計算題雖然是一大堆 : 可是小弟我發現每次遇到 Two-level 的計算題型就會卡 : 例如這題, : 我的觀念是第一層可以對到 2^10 個 : 第一層的每一個entry可以再對應到 2^10/entry 數量 : 不過我的想法好像不是對的 : 課本上題目也少找不太到詳細的解說 : 請版上高手指點一下了 謝謝! : http://i.imgur.com/XJiutB7.jpg Note that the 1st 10 bits of an addr is an idx into the lv1 page table 表示第一層之page table含2^10個entries 每個entry會對應到一個lv2 page table的位址 因此可知會有2^10個lv2 page table the next 10 bits are an idx into a lv2 page table 表示每個lv2 page table含2^10個entries 每個entry會對應到一個physical mem addr或是disk addr 從上之資訊可得: Virtual Addr.=32bits lv1 lv2 offset 10bits(已知) 10bits(已知) 32-10-10=12bits(原為未知) offset就是在memory or cache的分割單位中要取的資料的位移量 所以offset可表示的大小就是一個page的大小也就是frame的大小 因此page size = 2^12bytes = 4KB 已知此process共佔64MB的空間 則此process會佔去64MB/4KB = 16K個pages 其實前面都是廢話 只是我自己想重新回想一次而已XDD -- ※ 發信站: 批踢踢實業坊(ptt.cc), 來自: 61.60.217.209 ※ 文章網址: https://www.ptt.cc/bbs/Grad-ProbAsk/M.1449068069.A.7CC.html
odanaga: 不過兩層考用幾個頁表比較常見 12/02 23:00
goldflower: 對啊...這題考這樣用兩層好像沒啥意義XD 12/02 23:05