内存管理笔记六、非固定分区的内存管理
引言:第五篇笔记,介绍了固定分区的内存管理方式。本篇笔记将介绍非固定分区的内存管理。
一、非固定分区的内存管理
1.1、产生由来—对固定分区的改进
在第五篇笔记中,我们介绍了固定分区的缺点,包括程序大小和分区大小匹配不令人满意、无法解决程序长度大于分区问题、地址空间划分以后无法增长。这些弊端是因为分区时固定的大小,这样改进的方式即为采用非固定分区的方式来管理多道编程的内存空间。
1.2、核心思想–按需分配
非固定分区的思想很简单:除了划分给操作系统的空间外,其余内存空间是作为一个整体存在的。当一个程序需要占用内存空间时,就在该片空间里面分出一个大小刚刚满足程序的空间;再来一个程序,则在剩下的空间里面再分出这样一块来。
在这种模式下,一个程序可以加在到任何地方,也可以和物理内存一样大。同样对每个程序设置一个基址和极限寄存器,所有访问都必须在两个寄存器值框定的空间里,否则就算非法访问。