存储管理

动态存储管理

动态分区分配中数据结构分为:空闲分区表(起始位置、空闲块大小、使用情况(空闲或使用))和空闲分区链表

可利用空间表分为3种不同的形式:

  • 链表:系统运行期间,所有用户请求分配存储量大小相同,分配时无需查找,将第一个节点分配给用户,释放时,系统将用户释放的空闲块插入表头。
  • 分类若干可利用空间表。将空间分区分区根据容量大小进行分类,对于每一类具有相同容量的所有空闲分区,单独设定一个空闲分区链表。
  • 空闲块大小随意。系统运行期间,分配给用户的内存块大小不固定,可随需求改变。

可利用空间表的4种分配策略:

  • 首次拟合法:每次均从表头查找可利用空间表,将找到第一个>=需求的内存块分配给用户
  • 循环首次拟合法:不再每次均从表头而是从上次找到的空闲分区的下一个分区查找,将找到的第一个>=需求的内存块分配给用户
  • 最佳拟合法:遍历可利用空间表,从中找出全表最接近满足需求的内存块分配给用户
  • 最差拟合法:可利用空间表中最大空闲块分配给用户,此时结点应当从大到小排序,分配时只需从链表中删除第一个结点,并分配一部分给用户,剩余部分插
    首次拟合法、最佳拟合法及最差拟合法对比
    最佳拟合法适用于请求分配的内存大小范围较广的系统,最差拟合法最终使得链表中的结点大小趋于均匀,适用于请求分配的内存大小范围较窄的系统,首次拟合法适用于系统事先不掌握运行期间可能出
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值