連續分配、分頁和分段三種存儲分配機制的優缺點

少說廢話,先上思維導圖有個知識框架。

連續,設計簡單,直接尋址,效率高。缺點:內存利用效率最低,有內部碎片。
分頁,設計最複雜,容易產生外部碎片,無論數據有多少,都只能按照頁面大小分配,造成浪費。
分段,程序員在編程和使用上多方面的要求,缺點,無法利用碎片,必須搬移內存,造成性能損失。

一、分區存儲管理

  1、固定分區:

  優點:易於實現、開銷小

  缺點:存在內部碎片(分區內未被利用空間)、分區總數固定,限制了併發執行的程序數量。

  2、動態創建分區:按照程序申請要求分配。

  優點: 沒有內部碎片

  缺點:有外部碎片(難以利用的小空閒分區)

二、頁式存儲管理

  優點: 沒有外部碎片,最後一頁可能有內碎片但不大;程序不必連續存放;便於改變程序佔用空間大小。

  缺點: 程序仍需要全部裝入內存

分頁和分段系統有許多相似之處。比如,兩者都採用離散分配方式,且都要通過地址映射機構來實現地址變換。但在概念上兩者完全不同,主要表現在下述三個方面。 


(1) 頁是信息的物理單位,分頁是爲了實現非連續分配,以便解決內存碎片問題, 提高內存的利用率。或者說,分頁僅僅是由於系統管理的需要而不是用戶的需要。段則是信息的邏輯單位,分段的目的是爲了能更好地滿足用戶的需要。 

(2) 頁的大小固定且由系統決定,由系統把邏輯地址劃分爲頁號和頁內地址兩部分,是由機器硬件實現的,因而在系統中只能有一種大小的頁面;而段的長度卻不固定,決定於用戶所編寫的程序,通常由編譯程序在對源程序進行編譯時,根據信息的性質來劃分。

(3) 分頁的作業地址空間是一維的,即單一的線性地址空間,程序員只需利用一個記憶符,即可表示一個地址;而分段的作業地址空間則是二維的,程序員在標識一個地址時,既需給出段名,又需給出段內地址。
 

發表評論
所有評論
還沒有人評論,想成為第一個評論的人麼? 請在上方評論欄輸入並且點擊發布.
相關文章