![](https://csdnimg.cn/release/download_crawler_static/85792965/bg2.jpg)
第 7 章 存 储 管 理
为了弄清存储管理的功能,首先要了解存储管理要研究
的对象。内存储器的存储空间一般分为两部分:系统区和用
户区。系统区主要保存了操作系统和硬件相关的信息和标准
子程序。用户区主要包含用户的程序和数据。存储管理的研
究对象就是要对主存的用户区进行管理。
计算机系统中的处理机能够直接进行数据存取的介质是
内存,内存中存放的是操作系统的内核和处于执行态的作业。
对于程序和数据只有放在内存中,这个程序才能够运行。存
储管理的功能主要包括以下几个方面:逻辑地址到物理地址
的映射;主存空间的分配和回收;主存空间的共享和保护以
及主存空间的扩充。
7.1 存储管理的功能
![](https://csdnimg.cn/release/download_crawler_static/85792965/bg3.jpg)
第 7 章 存 储 管 理
7.1.1 地址映射
地址映射指的是将用户程序的逻辑地址转换成内存中物
理地址的过程。
逻辑地址指的是用户编程所用的地址,逻辑地址从 0 开
始编址。例如某个程序有 100 条指令,那么该程序的逻辑地
址范围是 0 ~ 99 。
内存是由若干个存储单元所组成的,每个存储单元就像
宾馆里的每一个房间一样,进行统一编号,即每一个存储单
元都有自己的编号,这个编号称为内存地址或物理地址。物
理地址也是从 0 开始编址的,例如内存容量是 128 MB ,那
么内存的物理地址为 0 B ~ 128×10
6
-1 B 。
![](https://csdnimg.cn/release/download_crawler_static/85792965/bg4.jpg)
第 7 章 存 储 管 理
引入多道程序设计技术后,在系统中可以驻留多个程序,
如果要执行用户程序,必须要把它从外存调入到内存中,对
于每一个用户程序又都是从 0 开始编址的,也就是说,每个
用户程序不可能都从内存的 0 地址开始进行分配。因此当用
户程序放入内存后,必然会存在逻辑地址和物理地址不符的
情况,所以操作系统提供了地址映射的功能来完成从逻辑地
址到物理地址的转换过程。
![](https://csdnimg.cn/release/download_crawler_static/85792965/bg5.jpg)
第 7 章 存 储 管 理
如图 7-1(a) 所示的是一个简单的程序段。第一条指令是
把数据 A 取到 1 号寄存器中,第二条指令是把数据 B 同 1 号
寄存器中的内容相加,结果放在 1 号寄存器中,第三条指令
是把 1 号寄存器的内容送入相对地址 10 中去。如果这个程
序原封不动地装入主存自 100 号单元起的存储区中,如图 7-
1(b) 所示,就无法正确执行,因为根据指令的要求,地址 6 、
8 和 10 中所存放的内容已经不是程序所需要的数据 A 和 B ,
数据 A 和 B 已经存放到内存 106 和 108 中。所以,为了保证
程序的正确执行,程序的每条指令都要作相应的调整,需要
重新进行定位,转换成如图 7-1(c) 所示的情况。