概述
可利用空间表及分配方法
首次拟合法
最佳拟合法
最差拟合法
边界标识法
可利用空间表的结构
可利用空间表的结构结点结构定义
分配算法
算法8.1
回收算法
(1)释放块的左、右邻区均为占用块。
(2)释放块的左邻区为空闲块,而右邻区为占用块。
(3)释放块的右邻区为空闲块,而左邻区为占用块。
(4)释放块的左、右邻区均为空闲块。
伙伴系统
可利用空间表的结构
数据结构
分配算法
算法8.2
回收算法
无用单元表收集
无用单元和悬挂访问
三种标志算法(递归算法,非递归算法,利用表结点本身的指针域标记遍历路径的算法)
算法8.3:求精后的广义表遍历算法
存储紧缩
紧缩的步骤
- 计算占用块的新地址
- 修改用户的初始变量表
- 检查每个占用块中存储的数据
- 将所有占用块迁移到新地址去