iT邦幫忙

2019 iT 邦幫忙鐵人賽

1
自我挑戰組

30天作業系統自學日記系列 第 28

CH28-記憶體管理(七)

Structure of Page Table

目的:page table size 太大太稀疏的解決方法。

Multilevel paging (多層的分頁)
將 page table 再予以分頁,透過 paging page table,只抓所需的 page table 進 memory。只需 1 個level 1 和 1 個 level 2 在 memory 就可執行。

Hashing Page Table (雜湊)
將 logical address 中的 p(page#) 經由 hashing function 計算取得 hashing table (page table) 的 bucket address。
而在每個 bucket 中,皆以 linked list 串連具相同 hashing address 的 page number 及對應的 frame number。
去 linked list 中搜尋符合的 page number 之節點。取得 f,然後與 d 相加得出 physical address。

Invert Page Table (反轉分頁表)

以 physical memory 為對象,建立一個 global page table 給所有 process (若有 m 個frames,table entry 有 m 格)
每個 entry 記錄此頁框被哪個 process 的哪個 page 所佔用以 <Process id, Page No>

http://mropengate.blogspot.com/2015/01/operating-system-ch8-memory-management.html


上一篇
CH27-記憶體管理(六)
下一篇
CH29-記憶體管理(八)
系列文
30天作業系統自學日記30
圖片
  直播研討會
圖片
{{ item.channelVendor }} {{ item.webinarstarted }} |
{{ formatDate(item.duration) }}
直播中

尚未有邦友留言

立即登入留言