33.2主存空间的分配与回收 ●1.采用的数据结构 ●2.主存空间的分配 ●3.主存空间的回收
3.3.2 主存空间的分配与回收 ⚫ 1.采用的数据结构 ⚫ 2.主存空间的分配 ⚫ 3.主存空间的回收
1.采用的数据结构 ●为了记录各个分区的基本情况和使用情 况,方便主存空间的分配与回收操作, 设置了一张分区分配表。 分区分配表的内容包括:分区序号、起始地 址、大小、状态。 状态栏的值为“0表示分区空闲,可以装入 作业;当装入作业后,其值改为作业名,表 示这个分区被该作业占有 如表3-1所示
1.采用的数据结构 ⚫ 为了记录各个分区的基本情况和使用情 况,方便主存空间的分配与回收操作, 设置了一张分区分配表。 – 分区分配表的内容包括:分区序号、起始地 址、大小、状态。 – 状态栏的值为“0”表示分区空闲,可以装入 作业;当装入作业后,其值改为作业名,表 示这个分区被该作业占有。 ⚫ 如表3-1所示
2.主存空间的分配 ●在作业分配之前,根据主存分区的划分,在分区分配 表填入每个分区的始址、大小,在状态栏中一律填入 “03,表示该分区可用,当作业装入时,填入作业名 ●当有作业申请主存空间时,主存空间的分配步骤为: 从作业队列中取出队首作业,检查分区分配表,选择状态标 志为“0的分区,根据作业地址空间的大小与状态标志为“0° 的分区的大小比较,当所有分区长度都不能容纳该作业时 则该作业暂时不能装入,显示主存不足的信息。 当某一个分区长度能容纳该作业时,则把作业装入该分区, 且把作业名填到该分区的状态栏里。 然后,再分配下一个作业 ●主存分配流程如图3-7所示
2.主存空间的分配 ⚫ 在作业分配之前,根据主存分区的划分,在分区分配 表填入每个分区的始址、大小,在状态栏中一律填入 “0” ,表示该分区可用,当作业装入时,填入作业名。 ⚫ 当有作业申请主存空间时,主存空间的分配步骤为: – 从作业队列中取出队首作业,检查分区分配表,选择状态标 志为“0”的分区,根据作业地址空间的大小与状态标志为“0” 的分区的大小比较,当所有分区长度都不能容纳该作业时, 则该作业暂时不能装入,显示主存不足的信息。 – 当某一个分区长度能容纳该作业时,则把作业装入该分区, 且把作业名填到该分区的状态栏里。 – 然后,再分配下一个作业。 ⚫ 主存分配流程如图3-7所示
3.主存空间的回收 ●当作业运行结束时,根据作业名到分区 分配表中进行检查,从状态栏的记录可 知该作业占用的分区,把该分区的状态 标志置成“0”,表示该分区就空闲了 可以用来装入新的作业
3.主存空间的回收 ⚫ 当作业运行结束时,根据作业名到分区 分配表中进行检查,从状态栏的记录可 知该作业占用的分区,把该分区的状态 标志置成“0”,表示该分区就空闲了, 可以用来装入新的作业
3.3.3地址转换与存储保护 ●1.地址转换 ●2.存储保护
3.3.3 地址转换与存储保护 ⚫ 1.地址转换 ⚫ 2.存储保护