一、内存空间的分配与回收
1、连续分配管理方式
(1)、单一连续分配
(2)、固定分区分配
(3)、动态分区分配
2、非连续分配管理方式
(1)、首次适应算法
(2)、最佳适应算法
(3)、最坏实现算法
(4)、循环首次适应算法
二、程序的装入和链接
1、程序装入内存的步骤
-
静态重定位方式的优点是:实现简单,从逻辑地址到物理地址变换不需要专门的硬件便能完成;缺点是:必须为程序分配一段连续的存储空间,并且程序在执行过程中不能在内存中移动。
-
程序装入方式
-
程序的链接方式
三、 内存管理的功能
-
内存的分配和回收:操作系统根据用户程序的请求,在内存中按照一定算法把找到一块空闲,将其分配给申请者;并负责把释放的内存空间收回,使之变为空闲区。
-
提高内存的利用率:通过多道程序共享内存,提高内存资源的利用率。
-
通过虚拟存储技术“扩充”内存容量:使用户程序在比实际内存容量大的情况下,也能在内存中运行。
-
内存信息保护:保证各个用户程序或进程在各自规定的存储区域内操作,不破坏操作系统区的信息,并且互不干扰。
四、覆盖与交换技术
1、覆盖技术
缺点:
-
覆盖技术对用户不透明,用户在编程时必须划分程序模块和确定程序模块之间的覆盖关系,增加了编程复杂度。
-
从外存装入覆盖文件,是以时间的延长来换取空间的节省。
2、交换技术(对换)
(1)、定义
把内存中暂时不能运行的进程或暂时不用的程序和数据换出到外存上,以便腾出足够的内存空间,再把已具备运行条件的进程或进程所需要的程序和数据换入内存。对换是改善内存利用率的有效措施,可以直接提高处理机的利用率和系统的吞吐量。
(2)、覆盖技术和交换技术的比较
-
-
与覆盖技术相比,交换技术不要求用户给出程序段之间的逻辑覆盖结构。
-
交换发生在进程或作业之间,而覆盖发生在同一进程或作业内。
-
覆盖只s能覆盖那些与覆盖段无关的程序段。
-
五、页式存储管理方式
1、页式存储管理的基本原理
进程的逻辑地址是A,页面大小是L,则页号P和页内偏移d为:
P=INT[A/L]
d=[A]MOD L
其中INT表示求整数,MOD表示求余数。
六、段式存储管理方式
1、分段系统的优点
易于实现段的共享,即允许若干个进程共享一个或多个分段,且对段的保护也十分简单易行。
2、分页和分段的主要区别
两者都采用了离散分配方式,而且都通过地址映射机构实现地址变换,但在概念上,页是信息的物理单位;页的大小固定且由系统决定;分页的用户程序地址空间是一维的。
3、分段和分页的比较
段是信息的逻辑单位,由源程序的逻辑结构所决定,用户可见,段长可根据用户需要来规定,段起始地址可以从任何地址开始。在分段方式中,源程序(段号,段内偏移)经连结装配后仍保持二维结构。
页是信息的物理单位,与源程序的逻辑结构无关,用户不可见,页长由系统确定,页面只能以页大小的整倍数地址开始。在分页方式中,源程序(页号,页内偏移)经连结装配后变成了一维结构。