0

Principles of virtual memory虛擬頁面僅駐留在存儲中嗎?什麼是沒有存儲的虛擬內存?

enter image description here

此圖顯示了被存儲在RAM磁盤和頁面框架頁。如果沒有交換區域,則不會有頁面,只有頁面框架。在沒有交換區域的情況下如何轉換虛擬地址?頁面表存儲什麼,它們本質上不是頁面?

一個相關的問題在這裏:

選擇的回答說:

框架或頁面框架基本上是一個物理頁面是在主內存的內存塊,而頁面或虛擬頁面尚未被映射到主存儲器中的頁面幀。

虛擬頁面是否只駐留在磁盤上?如果沒有交換區域,有沒有頁面?答案是,頁面通過頁表映射到頁面框架,但沒有提到這些頁面存在的位置或者沒有交換區域的情況。

如果沒有交換區和只有內存,什麼是虛擬內存?典型的虛擬內存是磁盤+內存。如果該表達式中沒有磁盤,該怎麼辦?

+0

[虛擬頁面和頁面框架之間的差異?](https://stackoverflow.com/questions/42258337/difference-between-virtual-page-and-page-frame) –

+0

@TonyTannous我見過那個問題。我編輯了我的問題來解釋更多。 – direprobs

回答

1

該圖很容易混淆,因爲它一次顯示兩個概念:邏輯內存翻譯和虛擬內存 - 它將兩個概念分開,而不是像過去那樣將它們混爲一談。

什麼是頁面表存儲,他們不是頁面本質上?

頁表定義了邏輯地址空間。它確定哪些頁面在地址空間中。這些頁面可能存在或不存在於物理內存中。

在沒有交換區域的情況下如何轉換虛擬地址?

完全使用頁表。如果系統使用分頁,操作系統必須執行第二級翻譯來查找特定頁面在輔助存儲中的位置。

如果沒有交換區域和只有RAM,什麼是虛擬內存?典型的虛擬內存是磁盤+內存。如果該表達式中沒有磁盤,該怎麼辦?

然後你有沒有虛擬內存的邏輯內存轉換。

+0

這很棒,這正是我所期待的。總之,我現在可以說下面這些:頁面表就像一張導致頁面位置的地圖(在RAM或存儲中)。頁表是邏輯/虛擬地址空間的_implementation_。只要進程需要訪問內存,它就通過頁表訪問內存。 – direprobs