2016-02-26 60 views
0

我對這三件事情非常困惑,我一直試圖理解這一點,堅持2個小時,沒有運氣。什麼是頁面表,頁面和頁面表項?

問: 如果我有一個頁面大小爲16 KB的47位虛擬地址空間,並且該頁表項佔用8個字節。如果要求每個頁面表適合單個頁面,那麼需要多少級別的頁面表來映射虛擬地址空間?

我知道頁表是什麼,但到底什麼是頁表項和一個頁面之間的區別?在回答鍵中,它由此開始:

1頁的頁面表包含2^11 PTE(x8字節),指向2^11頁(尋址2^25字節)。有人能向我解釋2^11頁的來源嗎?

或多或少,我對頁面意味着什麼以及頁面表項有什麼區別感到困惑。

回答

0

將邏輯地址空間放入一個PAGES數組中。在你的情況下,一個頁面是16KB或2^14字節。

PAGE TABLE包含從頁面到物理頁面框架的映射,其中頁面框架的大小與頁面大小相同。

你的回答(但不是問題)表明一個頁表項是8個字節(2^3)。假設這是正確的,您可以將2^14/2^3 = 2^11頁表條目合併到一個頁面中。

如果你有一個2^47位的地址空間,你需要2^47/2^14 = 2^33的頁表格來擴展整個地址空間。您需要2^33/2^11 = 2^22頁的頁面表項。

這個問題假設使用嵌套頁表。

(2^11)^ 2 = 2^22

那麼你需要的頁表的兩個層次。

整個問題是相當愚蠢的,人爲的,並不反映現實世界。我不相信操作系統是這樣教的。