当前位置:文档之家› 第4章存储器管理(1)

第4章存储器管理(1)


2020/4/8
18
程序的装入
动态运行时装入方式:动态运行时的装 入程序,在把装入模块装入内存后,并 不立即把装入模块中的相对地址转换为 绝对地址,而是把这种地址转换推迟到 程序要真正执行时才进行。
适于多道环境
允许程序移动,如切换
动态重定位
需要特殊硬件支持(重定位寄存器)
100 00 11000 LOAD 1,251020500
125 00
365
150 00
内存 空间
图 4-2 作业装入202内0/4/存8 时的情况
17
程序的装入
可重定位方式 把在装入时对目标程序中指令和数据 的修改过程称为重定位 地址变换通常是在装入时一次完成, 以后不再改变,故称为静态重定位 适于多道环境但不允许程序在内存中 移动
(1)编译。由编译程序将用户源代码编译成 若干个目标模块。
(2)链接。由链接程序将编译后形成的目标 模块以及它们所需要的库函数,链接在一起, 形成一个装入模块。
(3)装入。由装入程序将装入模块装入主存 的过程。
2020/4/8
10
源程序的执行过程
通常要经过编译、链接和装入几个步骤

4.1存储器的层次结构
高速缓存与磁盘缓存 (1)高速缓存介于主存与寄存器之间,速度 比主存快,比寄存器慢,价格比寄存器要低。 (2)磁盘缓存用于缓和磁盘的I/O速度远低 于对主存的访问速度的矛盾,磁盘缓存实际 上是从主存空间中划出一块区域,用来暂存 频繁使用的一部分磁盘数据和信息。
寄存器 高速缓存 主存 磁盘缓存 磁盘
可移动存储介质
2020/4/8
3
4.1存储器的层次结构
多级存储器结构 在存储层次中越往上,存储介质的访问速度 越快,价格越高,相对存储容量也越小。寄 存器、高速缓存、主存储器和磁盘缓存属于 操作系统存储管理的管辖范畴。
2020/4/8
4
4.1存储器的层次结构
A B
Load 1,6 Add 1,8 Store 1,10
A B
Load 1,106 Add 1,108 Store 1,110
A B
2020/4/8
16
可重定位装入方式(Relocation Loading Mode)
0
100 0 LOAD 1,2500
250 0 365
500 0 作业 地址 空间
2020/4/8
14
程序的装入
可重定位方式 :是由装入程序根据主存当
前的实际使用情况,将装入模块装入到主存 适当的地方。
重定位:在装入时对目标程序中指令 和数据的修改过程。会使装入模块中 的所有逻辑地址与实际装入内存的物 理地址不同
2020/4/8
15
程序的装入
可重定位方式 :
Load 1,6 Add 1,8 Store 1,10
内存
链接 程序
装 入模 块
装入 程序

第 一步
第 二步
第 三步
2020/4/8
11
4.1.1程序的装入
程序的装入就是把程序装入内存空间。以无需 进行链接的单目标模块的装入过程为例。
采用三种方式
(1)绝对装入方式:是由装入程序根据装入模块中 的地址,将程序和数据装入内存。 (2)可重定位方式 :是由装入程序根据内存当前的 实际使用情况,将装入模块装入到内存适当的地方。 (3)动态运行时装入方式:动态运行时的装入程序, 在把装入模块装入内存后,并不立即把装入模块中的 相对地址转换为绝对地址,而是把这种地址转换推迟 到程序要真正执行时才进行。
2020/4/8
6
习题
在计算机系统存储层次中,属于操作系统存 储管理的管理范畴的有()。 在计算机系统存储层次中,访问速度最快的 是()。 A. 高速缓存 B. 主存 C. 磁盘缓存 D.寄存器 磁盘缓存实际上占用了()空间。 A.高速缓存 B.主存 C.磁盘 D.可移动存 储介质
2020/4/8
第4章 存储器管理
计算机系统中的存储器可以分为两种:内存储器 和辅助存储器。前者可被CPU直接访问,后者不 能。辅助存储器与CPU之间只能够在输入输出控 制系统的管理下,进行信息交换。
既然内存储器可被CPU直接访问,因此它是计算 机系统中的一种极为重要的资源。在操作系统中, 把管理内存储器的部分称为“存储器管理”。能 否合理地使用内存,会在很大程度上影响到整个 计算机系统的性能。
2020/4/8
退1出
存储器管理的主要任务
存储管理的主要任务是尽可能方 便用户和提高内存储器的使用效 率,使内存储器在成本、速度和 规模之间获得较好的权衡。
2020/4/8
2
4.1存储器的层次结构
多级存储器结构
一般计算机,存储层次至少应具有三级:最高层为CPU寄存 器,中间为主存,最底层是辅存。较高档计算机中,根据具 体功能分为6层,如图4.1
2020/4/8
13
程序的装入
绝对装入方式只能将目标模块装入到内 存中事先指定的位置。在多道程序环境 下,编译程序不可能预知所编译的目标 模块应放在内存的什么地方,因此在多 道程序环境下,所得到的目标模块的起 始地址通常是从0开始的,程序中的其 它地址都是相对于起始地址计算的。因 此采用重定位装入方式。
主存储器与寄存器
(1)主存储器(又称内存和主存)是计算机系统 中一个主要部分,用于保存进程运行时的程序数据。 CPU本身读取指令和数据与外围设备的数据交换都 需要通过主存储器。由于主存储器的访问速度远低 于CPU执行指令的速度,为缓和这一矛盾,计算机 系统中引入了寄存器和高速缓存。 (2)寄存器访问速度最快,但价格昂贵。
2020/4/8
12
程序的装入
绝对装入方式:是由装入程序根据装入模 块中的地址,将程序和数据装入主存
若知道程序在内存的位置,编译程序将产生 绝对地址目标模块 绝对地址一般由编译程序给出 程序被装入内存后,由于程序中的逻辑地址 与实际内存地址完全相同,所以不允许改变 程序和数据的地址 只适于单道环境
7
4.2 程序的装入与链接
4.2.1.程序的装入 4.2.2.程序的链接
2020/4/8
8
程序的装入和链接
在多道程序环境下,要使程序运行, 必须先为之创建进程。而创建进程的 第一件事,就是将程序和数据装入内 存。
2020/4/8
9
源程序的执行过程
将一个用户源程序变为一个可在内存中执行 的程序,通常要经过编译、链接和装入几个 步骤
相关主题