windows 內存管理的幾種方式及其優缺點


windows 內存管理方式主要分為:頁式管理,段式管理,段頁式管理。

頁式管理的基本原理是將各進程的虛擬空間划分為若干個長度相等的頁;頁式管理把內存空間按照頁的大小划分成片或者頁面,然后把頁式虛擬地址與內存地址建立一一對應的頁表;並用相應的硬件地址變換機構來解決離散地址變換問題。頁式管理采用請求調頁或預調頁技術來實現內外存存儲器的統一管理。其優點是沒有外碎片,每個內碎片不超過頁的大小。缺點是,程序全部裝入內存,要求有相應的硬件支持。例如地址變換機構缺頁中斷的產生和選擇淘汰頁面等都要求有相應的硬件支持。這增加了機器成本,增加了系統開銷。

段式管理的基本思想是把程序按照內容或過程函數關系分段,每段都有自己的名字。一個用戶作業或進程所包括的段對應一個二維線形虛擬空間,也就是一個二維虛擬存儲器。段式管理程序以段為單位分配內存,然后通過地址映射機構把段式虛擬地址轉換為實際內存物理地址。其優點是可以分別編寫和編譯,可以針對不同類型的段采用不同的保護,可以按段為單位來進行共享,包括通過動態鏈接進行代碼共享。缺點是會產生碎片。

段頁式管理:為了實現段頁式管理,系統必須為每個作業或進程建立一張段表以管理內存分配與釋放、缺段處理等。另外由於一個段又被划分成了若干個頁。每個段必須建立一張頁表以把段中的虛頁變換成內存中的實際頁面。顯然與頁式管理時相同,頁表中也要有相應的實現缺頁中斷處理和頁面保護等功能的表項。段頁式管理的段式管理與頁式管理方案結合而成的所以具有他們兩者的優點。但反過來說,由於管理軟件的增加,復雜性和開銷也就隨之增加了。另外需要的硬件以及占用的內存也有所增加。使得速度降下來。


免責聲明!

本站轉載的文章為個人學習借鑒使用,本站對版權不負任何法律責任。如果侵犯了您的隱私權益,請聯系本站郵箱yoyou2525@163.com刪除。



 
粵ICP備18138465號   © 2018-2025 CODEPRJ.COM