【MOOC:操作系統】第五講 物理內存管理:連續內存分配

計算機的體系結構

內存層次: 處理器, cpu, L1緩存,L2緩存

MMU: 存儲管理單元

操作系統中采用的內存管理方式: 重定位, 分段,分頁(最小的單位),虛擬存儲

程序: 數據,代碼, 堆棧

地址空間和地址生成

32 為 4G-1 ??

cpu中的alu

段基址和段長度(12‘)

地址生成時機和限制

編譯時, 加載時, 運行時(虛擬內存)

連續內存分配

內存碎片:空閑內存不能利用,內碎片(要510,給512)

動態分區配制策略:最先匹配, 最佳匹配, 最差匹配

最先匹配:

優點

1 簡單

2 在高地址空間 有大塊的空閑 分區

缺點,

1 外部碎片

2 分配大塊時較慢

最佳匹配:

優點

1 大部分分配的尺寸較小時, 效果很好

可避免大的空閑分區被拆分

可減少外部碎片的大小

相對簡單

缺點

1 外部碎片

2 釋放分區較慢

3 容易產生很多無用的小碎片

最差匹配:

優點

1 中等大小的分配較多時, 效果最好

2 避免出現太多的小碎片

缺點

1 釋放分區較慢

2 外部碎片

3 容易破壞大的空閑分區, 因此后續難以分配大的分區

伙伴系統

優點:

1 碎片率很小

2 而且很容易做成非入侵式的, 不用在被管理的內存上保存cookie

只需要額外開辟一個二叉樹記錄內存使用狀態即可。

碎片整理

條件

伙伴系統對與事例中的,為什么能分配小于一頁,即512字節。

最后編輯于
?著作權歸作者所有,轉載或內容合作請聯系作者
平臺聲明:文章內容(如有圖片或視頻亦包括在內)由作者上傳并發布,文章內容僅代表作者本人觀點,簡書系信息發布平臺,僅提供信息存儲服務。

推薦閱讀更多精彩內容

  • 5.1計算機體系結構和內存層次 計算機體系結構 內存層次 操作系統的內存管理 存儲管理要達到效果是抽象,把線性的物...
    龜龜51閱讀 1,201評論 0 1
  • 連續分配方式,是指為一個用戶程序分配一個連續的內存空間。它主要包括單一連續分配、固定分區分配和動態分區分配。 單一...
    saviochen閱讀 3,712評論 0 5
  • 嵌入式系統的內存管理 姓名:張猛 引用自:http://blog.csdn.net/baskmmu/article...
    oliverabc閱讀 2,114評論 0 0
  • Spring Cloud為開發人員提供了快速構建分布式系統中一些常見模式的工具(例如配置管理,服務發現,斷路器,智...
    卡卡羅2017閱讀 134,915評論 18 139
  • 最近比較關注學習方法,斯科特-揚《如何高效學習》中講到整體學習法。 愛因斯坦說過:“Compound intere...
    Knowingisbeing閱讀 1,359評論 2 6