「可变分区存储管理」是另一种存储管理方式。指事先并未将主存划分为一块块分区,而是在作业进入主存时,按作业的大小动态地建立分区,且分区个数也是随机的,实现多个作业对内存的共享,进一步提高内存资源利用率。
例如计算机系统有 2560KB 主存,按照可变分区方式,系统首先为 OS 分配一个系统分区,剩余的作为一个整的分区作为用户分区。OS需要 400KB,则用户区为 2160KB。系统启动后,有 5 个作业依次进入内存,其内存要求和进入时间如表:
进程 | 主存 | 时间 |
---|---|---|
P1 | 600KB | 10 |
P2 | 1000KB | 5 |
P3 | 300KB | 20 |
P4 | 700KB | 8 |
P5 | 500KB | 15 |
则可变分区存储管理的过程如下
由于作业的大小以及进入主存的时间不同。形成以下特点:
必须解决的问题
计算机系统有 2560KB 主存,按照可变分区方式,系统首先为 OS 分配一个系统分区,剩余的作为一个整的分区作为用户分区。OS 需要 400KB,则用户区为 2160KB。系统启动后,其主存分配图(a),此时有 5 个作业依次进入内存,其内存要求和进入时间如表:
进程 | 主存 | 时间 |
---|---|---|
P1 | 600KB | 10 |
P2 | 1000KB | 5 |
P3 | 300KB | 20 |
P4 | 700KB | 8 |
P5 | 500JB | 15 |
运行情况如下图(碎片这个概念经常作为简答题考,解释内部、外部碎片产生的原因以及能否作为二次利用,50%以上概率)