2012-06-20 38 views
1

我對分頁感到困惑,我正在寫我對分頁的理解,請糾正我,我錯了。內存管理[尋呼]

首先我們將系統中的總物理內存[RAM]分成4kb的頁框。
其次用戶進程生成虛擬地址,virtualpages [4kb]包含這些虛擬地址。
現在有是用於存儲頁表項中的頁表[PTE不過是有關頁]

現在,當一個進程中運行這些虛擬地址映射到由MMU在RAM中的物理頁面。

我的問題是每個進程都有自己的頁表,所以當一個進程運行時,這個頁表應該被帶入RAM中。

回答

2

假設您有4GB RAM和4GB頁面/交換文件。你總共有8GB的內存。將內存分配給進程時的操作系統將使用虛擬地址來處理整個8GB內存。這些虛擬地址被記錄在頁表中與其對應的物理地址相對應。

我的問題是每個進程獲得自己的頁表,所以當一個進程運行此頁表應提請在RAM與否。

的處理沒有得到一個頁表,它得到的地址空間(虛擬地址)。這允許操作系統進行一些優化,如碎片整理,而不會干擾最初發布到進程的地址空間。