作業系統——記憶體連續分配管理方式

sjyzy97 發表於 2020-10-17

單一連續分配

單一連續分配同一時刻只會有一個程式執行
在這裡插入圖片描述

固定分割槽分配

在這裡插入圖片描述
如果分割槽大小不相等,就需要通過一個資料結構來儲存分割槽的結構
在這裡插入圖片描述

動態分割槽分配

在這裡插入圖片描述

動態分割槽分配的資料結構

空閒分割槽表和空閒分割槽連
在這裡插入圖片描述

動態分配分割槽演算法

在這裡插入圖片描述

首次適應演算法

在這裡插入圖片描述

最佳適應演算法

在這裡插入圖片描述

最壞適應演算法

在這裡插入圖片描述

鄰近適應演算法

在這裡插入圖片描述

總結

在這裡插入圖片描述

動態分配分割槽分配與回收

分割槽數量不變,如果空閒分割槽的大小大於程式大小,則直接扣除分割槽大小即可
在這裡插入圖片描述
如果分割槽大小相同的情況下則直接從資料結構中刪除分割槽
在這裡插入圖片描述
回收區域如果後面有分割槽的情況下需要把分割槽合二為一
在這裡插入圖片描述

如果回收的分割槽,分割槽前面和後面都有分割槽,那麼就應該把前後的分割槽合併
在這裡插入圖片描述
如果回收的程式上下沒有空閒分割槽,那麼就直接在空閒分割槽表中直接新增空閒分割槽

加粗樣式
緊湊技術,為了更好的處理動態分配分割槽中流下來的外部碎片
在這裡插入圖片描述

總結

在這裡插入圖片描述