在這張圖中,虛擬地址空間大於物理地址空間。它有可能是相反的嗎?這將如何工作,因爲如果虛擬地址空間更小,那麼虛擬地址空間如何有足夠空間引用物理地址空間中的所有內容?虛擬地址空間大小vs物理地址空間大小
1
A
回答
1
如何將這項工作,因爲虛擬地址空間會如何有足夠的空間在物理地址空間來引用一切,如果它的體積更小?
它沒有足夠的空間,這根本不成問題。爲什麼每個虛擬地址空間需要覆蓋全部物理內存?事實上,在大多數電腦上幾乎從未發生過。虛擬內存的動機之一就是分離每個進程的內存,這樣他們就不會踩到彼此的腳趾。
即使在您的照片中,虛擬地址空間也不會引用物理地址空間中的所有內容。紅色頁面不屬於該進程,這意味着它們不會出現在虛擬地址空間中。
使用PAE的32位計算機使用多於4個GiB物理內存就是一個例子。每個虛擬地址空間最多爲4 GiB,即使可以使用8 GiB或更多的物理RAM。
相關問題
- 1. 虛擬地址空間
- 2. 處理虛擬地址空間和內核地址空間?怎麼樣?
- 3. 如何將物理地址映射到不同大小的虛擬地址?
- 4. 虛擬地址空間vs虛擬內存
- 5. 虛擬地址大小計算
- 6. 解釋WEC7虛擬/物理地址空間
- 7. 虛擬和物理地址空間是相同的
- 8. 虛擬地址空間和尋呼
- 9. 如何分頁虛擬地址空間?
- 10. 多線程虛擬地址空間?
- 11. 虛擬地址空間碎片
- 12. 物理地址與虛擬地址
- 13. 當虛擬地址空間等於物理地址空間時,我們是否需要MMU?
- 14. kmalloc如何返回大於物理地址大小的物理地址?
- 15. Linux進程虛擬地址空間的地址範圍
- 16. 虛擬地址系統上的進程地址空間
- 17. 虛擬與物理地址
- 18. PAE(物理地址擴展)如何啓用大於4GB的地址空間?
- 19. 將內核空間虛擬地址映射到Windows 10驅動程序中的用戶空間虛擬地址
- 20. 進程地址空間vs虛擬內存
- 21. 保留64位的地址空間大小爲4 GB
- 22. Ubuntu 32位最大地址空間
- 23. 邏輯地址(virtaul地址空間)而不是物理地址空間的原因
- 24. 可達性vs地址空間vs地址總線
- 25. PThreads地址空間
- 26. 理解元空間大小
- 27. ELF中的虛擬和物理地址
- 28. 虛擬內存是否總是爲進程提供更大的地址空間?
- 29. 堆空間大小?
- 30. 將物理地址映射到虛擬地址linux
這聽起來像http://en.wikipedia.org/wiki/Physical_Address_Extension和其他較早的系統 – 2014-10-17 12:10:33
這裏可能是頂級的。但請注意,如果在該圖上的*箭頭*數量少得多 - 比如說只有一個 - 您可以將左側的地址空間縮小到更小的尺寸 - 並且所有這些都會導致右側的頁面更多粉。爲了解決所有的物理內存問題,你所要做的就是改變一個箭頭指向的地方。 – 2014-10-17 12:12:23