目录

https://blog.csdn.net/weixin_45792450/article/details/109314765


单道程序的内存管理

内存管理 分区存储管理

内存管理 分区存储管理


多道程序的内存管理

内存管理 分区存储管理

后面详细讨论固定式分区分配可变式分区分配,它们都是分区存储管理


固定式分区分配

把内存划分为若干个固定大小的连续分区,每个分区装入一个作业,分区可以同等大小,也可以差异不等。面对分区大小的差异,可以用两种方法进行处理:单一队列的分配方式,多队列分配方式

单一队列的分配方式

内存管理 分区存储管理

多队列分配方式

内存管理 分区存储管理

固定式分区分配的优劣讨论

内存管理 分区存储管理


可变式分区分配

内存管理 分区存储管理

分区初始时,如下:

内存管理 分区存储管理

继续分配,出现如下情况:

内存管理 分区存储管理

此时就需要讨论第一轮内存分配完,存在进程释放空间后的内存分配,即考虑哪些处于两个进程之间的内存空间(通常是进程结束释放空间导致)。

下面提供几种经典的分配算法。

内存管理 分区存储管理

说明:首次适应与下次适应算法着眼于搜索可用空间的代价,最佳适应与最坏适应算法着眼于分配后对应残余碎片的大小。


覆盖技术与交换技术

覆盖技术示意图

内存管理 分区存储管理

大作业的各个模块有时候运行是互斥的,比如图中B和C不可能同时运行,那么就没必要在内存中同时给B和C都预留空间,此时可预留一个20KB空间即可。

交换技术

内存管理 分区存储管理

相关文章: