記憶體管理機制的發展

ZXL的部落格發表於2020-11-05

記憶體管理機制的發展

純粹分段

機制

  • 基址+極限

缺點

  • 多次啟動並銷燬程式後,產生外部碎片
  • 通過轉入外存,再轉入記憶體的方法來實現空間增長:時間效率低、空間有天花板

分頁

機制

  • 以頁為最小的單位

優點

  • 頁為最小單元解決了外部碎片
  • 空間增長通過新增頁的方式進行:效率增加,天花板消失(將部分頁放在外存)

缺點

  • 頁內不同邏輯的資料共享同一個虛擬地址空間,出現短板效應:如共享、增長與收縮
  • 時間是拿空間換來的:因頁小,故頁表大。
    • 多級頁表,快表

邏輯分段

機制

  • 按邏輯將程式分段

優點

  • 按邏輯將程式分段,解決了共用虛擬地址空間問題
  • 段表小,易於上下文切換

缺點

  • 分段管理出現“基址+極限”的問題:主存內出現外部碎片
  • 段是一個整體,通常要一整個都載入進入主存
  • 由於程式需要邏輯齊全,所以每次所以段都要載入進入主存

段頁式

機制

  • 先分段,再分頁

優點

  • 相比分頁,實現了邏輯分類
  • 相比分段,解決了“基址+極限”的問題

總結

  • 分頁是空間換時間
  • 分段是解耦合,實現不同邏輯資料的分離

相關文章