【操作系统】王道考研 p35-36 连续分配管理方式、动态分区分配算法

连续分配管理方式
动态分区分配算法

知识总览

在这里插入图片描述
在这里插入图片描述

以下是连续分配管理方式

单一连续分配

单一连续分配:内存被分为系统区和用户区
系统区:存放操作系统相关数据。
用户区:存放用户进程相关数据。
内存中只能有一道用户程序。
在这里插入图片描述

固定分区分配

分为分区大小相等和不等两种情况。
在这里插入图片描述
分区说明表:
大小,起始位置,(分配)状态
在这里插入图片描述

动态分区分配

又称为可变分区分配
不会预先划分内存分区,而是在进程装入内存时,根据进程的大小动态地建立分区。

三个问题:
系统要用什么数据结构记录内存的使用情况?
表或链。
在这里插入图片描述
当很多个空闲分区都能满足需求时,应该选择哪个分区进行分配
按照一定的动态分区分配算法来分配。这里不细说。

如何进行分区的分配与回收?
视频14:57开始
分配有两种方法。
分配方法1:修改空闲分区大小和起始地址。
分配给进程5。
在这里插入图片描述
分配方法2:(如果刚好用完)删除空闲分区。
在这里插入图片描述
回收有4种方法。
回收方法1:回收区的后面有一个相邻的空闲分区,则将相邻的2个空闲分区合并为1个。
在这里插入图片描述
回收方法2:回收区的前面有一个相邻的空闲分区,则将相邻的2个空闲分区合并为1个。

回收方法3:回收区的前面和后面都有一个相邻的空闲分区,则将相邻的3个空闲分区合并为1个。

回收方法4:回收区的前后都没有一个相邻的空闲分区,则增加一个表项。
在这里插入图片描述

动态分区分配有外部碎片。
内部碎片:分配给进程的没用上。
外部碎片:空闲分区太小用不上。
在这里插入图片描述
蓝色的小缝隙就是外部碎片。
在这里插入图片描述

以下是动态分区分配算法

首次适应算法:每次都从低地址开始查找,找到的第一个能满足大小的空闲分区。

最佳适应算法:空闲分区按容量递增次序链接。每次分配内存顺序查找空闲分区链(表),找到大小能满足要求的第一个空闲分区。也就是找大于等于要求的最小分区。
缺点:每次都选最小的分区分配,会留下更多很小的难以利用的内存块。会产生很多外部碎片。

最坏适应算法:又称最大适应算法。就是找满足条件的最大的空间进行分配。
缺点:每次都选最大的分区分配,可能导致较大的连续空间快速用完,之后若有大进程到达,将无分区可用。

临近适应算法:从上次查找结束位置开始找,找到满足要求的第一个空闲分区。
在这里插入图片描述

总结

在这里插入图片描述
在这里插入图片描述

  • 1
    点赞
  • 0
    收藏
    觉得还不错? 一键收藏
  • 打赏
    打赏
  • 0
    评论
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包

打赏作者

karshey

你的鼓励将是我创作的最大动力

¥1 ¥2 ¥4 ¥6 ¥10 ¥20
扫码支付:¥1
获取中
扫码支付

您的余额不足,请更换扫码支付或充值

打赏作者

实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

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

余额充值