固定存储,可变存储;连续存储,离散存储

结论:

固定存储和可变存储 是针对内存布局而言。

 

连续存储和离散存储 是针对进程分配而言。

 

(进程分配是建立在内存已经完成布局的基础之上的)

 

两对不是一个维度的。不能杂糅。

 

——————————

 

对于内存来说,假设一共10kB总空间。如果要配合批处理操作系统或者多道程序系统,首先要考虑怎么划分这10kB,来存放多个进程。

 

固定分区

定义

 

又称定长分区或静态分区模式,是满足多道程序设计需要的最简单的存储管理技术。基本思想:给进入主存的用户作业划分一块连续存储区域,把作业装入该连续存储区域,

将10kb 均匀划分成 5+5 kb 或者 2+2+2+2+2 kb。一经划分,布局完成,不可改变。

 

可变分区

定义:

不是预先把内存中的用户区域划分成若干固定分区,而是在作业要求装入内存时,根据用户作业的大小和当时内存空间使用情况决定是否为该作业分配一个分区。因此分区大小不是预先固定的,而是按作业需求量来划分的;分区的个数和位置也不是预先确定的。

调度:

例如,一共有10kb,a作业来到内存,需要3kb。现在就是3+7。b作业来到内存,需要6kb,现在就是3+6+1。

 

在申请和释放过程(缺页)中自然就有调度问题,也就需要我们的调度算法 : 局部置换和全局置换。(固定分区只能配合局部置换)

 

解决的问题:采用地址动态重定位技术,使程序能在内存中移动,为空闲区合并提供保证。

实现

1.单链表

2.表格法(结构数组记录)

——————

离散 or 连续

对于离散分配和连续分配,则是在已经确实好是固定分区还是可变分区的基础上,怎样安排进程作业。离散无非就是加个页表来地址映射。

 

你可能感兴趣的:(linux)