操作系统C 第4章 存储器管理1
《操作系统》第4章教材习题解答
第4章存储管理“练习与思考”解答1.基本概念和术语逻辑地址、物理地址、逻辑地址空间、内存空间、重定位、静态重定位、动态重定位、碎片、碎片紧缩、虚拟存储器、快表、页面抖动用户程序经编译之后的每个目标模块都以0为基地址顺序编址,这种地址称为相对地址或逻辑地址。
内存中各物理存储单元的地址是从统一的基地址开始顺序编址的,这种地址称为绝对地址或物理地址。
由程序中逻辑地址组成的地址范围叫做逻辑地址空间,或简称为地址空间。
由内存中一系列存储单元所限定的地址范围称作内存空间,也称物理空间或绝对空间。
程序和数据装入内存时,需对目标程序中的地址进行修改。
这种把逻辑地址转变为内存物理地址的过程称作重定位。
静态重定位是在目标程序装入内存时,由装入程序对目标程序中的指令和数据的地址进行修改,即把程序的逻辑地址都改成实际的内存地址。
动态重定位是在程序执行期间,每次访问内存之前进行重定位。
这种变换是靠硬件地址转换机构实现的。
内存中这种容量太小、无法被利用的小分区称作“碎片”或“零头”。
为解决碎片问题,移动某些已分配区的内容,使所有进程的分区紧挨在一起,而把空闲区留在另一端。
这种技术称为紧缩(或叫拼凑)。
虚拟存储器是用户能作为可编址内存对待的虚拟存储空间,它使用户逻辑存储器与物理存储器分离,是操作系统给用户提供的一个比真实内存空间大得多的地址空间。
为了解决在内存中放置页表带来存取速度下降的矛盾,可以使用专用的、高速小容量的联想存储器,也称作快表。
若采用的置换算法不合适,可能出现这样的现象:刚被换出的页,很快又被访问,为把它调入而换出另一页,之后又访问刚被换出的页,……如此频繁地更换页面,以致系统的大部分时间花费在页面的调度和传输上。
此时,系统好像很忙,但实际效率却很低。
这种现象称为“抖动”。
2.基本原理和技术(1)存储器一般分为哪些层次?各有何特性?存储器一般分为寄存器、高速缓存、内存、磁盘和磁带。
CPU内部寄存器,其速度与CPU一样快,但它的成本高,容量小。
计算机操作系统第四章存储器管理复习资料
第四章存储器管理第一部分教材习题(P159)15、在具有快表的段页式存储管理方式中,如何实现地址变换?答:在段页式系统中,为了便于实现地址变换,须配置一个段表寄存器,其中存放段表始址和段长TL。
进行地址变换时,首先利用段号S,将它与段长TL进行比较。
若S<TL,表示未越界,利用段表始址和段号来求出该段所对应的段表项在段表中的位置,从中得到该段的页表始址,并利用逻辑地址中的段内页号P来获得对应页的页表项位置,从中读出该页所在的物理块号b,再利用块号b和页内地址来构成物理地址。
在段页式系统中,为了获得一条指令或数据,须三次访问内存。
第一次访问内存中的段表,从中取得页表始址;第二次访问内存中的页表,从中取出该页所在的物理块号,并将该块号与页内地址一起形成指令或数据的物理地址;第三次访问才是真正从第二次访问所得的地址中,取出指令或数据。
显然,这使访问内存的次数增加了近两倍。
为了提高执行速度,在地址变换机构中增设一个高速缓冲寄存器。
每次访问它时,都须同时利用段号和页号去检索高速缓存,若找到匹配的表项,便可从中得到相应页的物理块号,用来与页内地址一起形成物理地址;若未找到匹配表项,则仍须再三次访问内存。
19、虚拟存储器有哪些特征?其中最本质的特征是什么?答:虚拟存储器有以下特征:多次性:一个作业被分成多次调入内存运行,亦即在作业运行时没有必要将其全部装入,只需将当前要运行的那部分程序和数据装入内存即可;以后每当要运行到尚未调入的那部分程序时,再将它调入。
多次性是虚拟存储器最重要的特征,任何其他的存储器管理方式都不具有这一特征。
因此,认为虚拟存储器是具有多次性特征的存储器系统。
对换性:允许在作业的运行过程中进行换进、换出,也即,在进程运行期间,允许将那些暂不使用的程序和数据,从内存调至外存的对换区(换出),待以后需要时再将它们从外存调至内存(换进);甚至还允许将暂不运行的进程调至外存,待它们重又具备运行条件时再调入内存。
专升本操作系统第四章存储管理
缺点
内存紧缩操作需要消耗较大的系统资源,可能会 影响系统性能。
04
页式存储管理
页式存储管理的概念
01
页式存储管理是一种将内存划 分为固定大小的页,并将外存 空间划分为同样大小的页的存 储管理方式。
02
每个程序都被划分为一系列的 页面,并按照一定的规则将程 序加载到内存中。
段的共享
多个程序可以共享同一个段,通过共享可以节省 内存空间。
段的保护
通过设置段表和段长寄存器,实现段的保护,防 止越界访问。
段的移动
当需要将程序从内存中移出时,可以移动其中的 某个或多个段,而不是整个程序。
段式存储管理的优缺点
提高内存利用率
可以将不同程序的不同段分配到不同 的内存区域,避免浪费。
存储管理的主要目标是提高存储器的利用率,并保 证存储器的安全性和可靠性。
存储管理的功能
01
02
03
04
内存管理
负责内存的分配、回收和保护 ,包括内存分区、分页、分段 等管理方式。
外存管理
负责磁盘等外部存储器的管理 ,包括文件的创建、删除、读 写等操作。
缓存管理
负责缓存区的分配、替换和缓 存数据的读写操作,以提高存 储器的访问速度。
动态分区存储管理的优缺点
02
01
03
优点 可以有效地利用物理内存,提高内存利用率。 支持多道程序运行,提高系统吞吐量。
动态分区存储管理的优缺点
• 可以根据进程的实际需求动态地分配和回收内存。
动态分区存储管理的优缺点
由于分区分配算法的选择会影响内存利用率和 系统性能,因此需要仔细选择合适的算法。
操作系统第17讲 习题三new
A,B(1)提高系统吞吐量(2)提高存储空
间的利用率(3)降低存储费用(4)提高换入换出
的速度。
10
东北大学秦皇岛分校计算机与通信工程学院
第四章 存储器管理
5、对重定位存储管理方式,应(A),当程序执行时,
是由(B)与(A)中的(C)相加得到(D),用(D)
来访问内存。
A(1)在整个系统中设置一个重定位寄存器;(2)
Ⅰ. 修改页表 Ⅱ.磁盘I/O Ⅲ.分配页框
A.仅Ⅰ、Ⅱ B.仅Ⅱ C.仅Ⅲ D.Ⅰ、Ⅱ和Ⅲ
21
东北大学秦皇岛分校计算机与通信工程学院
第四章 存储器管理
10.当系统发生抖动(thrashing)时,可用采取
的有效措施是()
Ⅰ. 撤销部分进程
Ⅱ.增加磁盘交换区的容量
Ⅲ.提高用户进程的优先级
A.仅Ⅰ B.仅Ⅱ C.仅Ⅲ D.仅Ⅰ、Ⅱ
空闲区大小递减
8
东北大学秦皇岛分校计算机与通信工程学院
第四章 存储器管理
3、在回收内存时能出现下述几种情况(1)释放区与插
入点前一分区F1相邻,此时应(A);(2)释放区与
插入点后一分区F2相临界,此时应(B);(3)释放
区不与F1和F2相邻接,此时应(C)。
A,B,C:(1)为回收分区建立一分区表项,填上分
第四章 存储器管理
1、在动态分区式内存管理中,倾向于优先使用低
地址部分的空闲区的算法是(A);能使内存空间
中空闲分区分布得较均匀的算法是(B);每次分
配时,把即能满足需要,又能最小的空间区分配给
进程的算法是(C)
A,B,C:(1)最佳适应算法;(2)最坏适
应算法;(3)首次适应算法(4)循环首次适应算
计算机操作系统第四章-存储器管理
第四章存储器管理第0节存储管理概述一、存储器的层次结构1、在现代计算机系统中,存储器是信息处理的来源与归宿,占据重要位置。
但是,在现有技术条件下,任何一种存储装置,都无法从速度、容量、是否需要电源维持等多方面,同时满足用户的需求。
实际上它们组成了一个速度由快到慢,容量由小到大的存储装置层次。
2、各种存储器•寄存器、高速缓存Cache:少量的、非常快速、昂贵、需要电源维持、CPU可直接访问;•内存RAM:若干(千)兆字节、中等速度、中等价格、需要电源维持、CPU可直接访问;•磁盘高速缓存:存在于主存中;•磁盘:数千兆或数万兆字节、低速、价廉、不需要电源维持、CPU 不可直接访问;由操作系统协调这些存储器的使用。
二、存储管理的目的1、尽可能地方便用户;提高主存储器的使用效率,使主存储器在成本、速度和规模之间获得较好的权衡。
(注意cpu和主存储器,这两类资源管理的区别)2、存储管理的主要功能:•地址重定位•主存空间的分配与回收•主存空间的保护和共享•主存空间的扩充三、逻辑地址与物理地址1、逻辑地址(相对地址,虚地址):用户源程序经过编译/汇编、链接后,程序内每条指令、每个数据等信息,都会生成自己的地址。
●一个用户程序的所有逻辑地址组成这个程序的逻辑地址空间(也称地址空间)。
这个空间是以0为基址、线性或多维编址的。
2、物理地址(绝对地址,实地址):是一个实际内存单元(字节)的地址。
●计算机内所有内存单元的物理地址组成系统的物理地址空间,它是从0开始的、是一维的;●将用户程序被装进内存,一个程序所占有的所有内存单元的物理地址组成该程序的物理地址空间(也称存储空间)。
四、地址映射(变换、重定位)当程序被装进内存时,通常每个信息的逻辑地址和它的物理地址是不一致的,需要把逻辑地址转换为对应的物理地址----地址映射;地址映射分静态和动态两种方式。
1、静态地址重定位是程序装入时集中一次进行的地址变换计算。
物理地址= 重定位的首地址+ 逻辑地址•优点:简单,不需要硬件支持;•缺点:一个作业必须占据连续的存储空间;装入内存的作业一般不再移动;不能实现虚拟存储。
计算机操作系统(习题集)第四章 答案
第四章存储器管理一、单项选择题1、存储管理的目的是(C )。
A.方便用户B.提高内存利用率C.方便用户和提高内存利用率D.增加内存实际容量2、在( A)中,不可能产生系统抖动的现象。
A.固定分区管理B.请求页式管理C.段式管理D.机器中不存在病毒时3、当程序经过编译或者汇编以后,形成了一种由机器指令组成的集合,被称为(B )。
A.源程序B.目标程序C.可执行程序D.非执行程序4、可由CPU调用执行的程序所对应的地址空间为(D )。
A.符号名空间B.虚拟地址空间C.相对地址空间D.物理地址空间5、存储分配解决多道作业[1C]划分问题。
为了实现静态和动态存储分配,需采用地址重定位,即把[2C]变成[3D],静态重定位由[4D]实现,动态重定位由[5A]实现。
供选择的答案:[1]:A 地址空间 B 符号名空间 C 主存空间 D 虚存空间[2]、[3]: A 页面地址 B 段地址 C 逻辑地址 D 物理地址 E 外存地址 F 设备地址[4]、[5]: A 硬件地址变换机构 B 执行程序 C 汇编程序D 连接装入程序E 调试程序F 编译程序G 解释程序6、分区管理要求对每一个作业都分配(A )的内存单元。
A.地址连续B.若干地址不连续C.若干连续的帧D.若干不连续的帧7、(C )存储管理支持多道程序设计,算法简单,但存储碎片多。
A.段式B.页式C.固定分区D.段页式8、处理器有32位地址,则它的虚拟地址空间为( B)字节。
A.2GBB.4GBC.100KBD.640KB9、虚拟存储技术是( A)。
A.补充内存物理空间的技术B.补充相对地址空间的技术C.扩充外存空间的技术D.扩充输入输出缓冲区的技术10、虚拟内存的容量只受( D)的限制。
A.物理内存的大小B.磁盘空间的大小C.数据存放的实际地址D.计算机地址字长11、虚拟存储技术与(A )不能配合使用。
A.分区管理B.动态分页管理C.段式管理D.段页式管理12、(B )是指将作业不需要或暂时不需要的部分移到外存,让出内存空间以调入其他所需数据。
操作系统第四章复习
页框号为21。 因为起始驻留集为空, 而0页对应的ห้องสมุดไป่ตู้框为空闲链表中的第三个空闲页框,其对应的页框号为21。
页框号为32。 因为11 > 10故发生第三轮扫描,页号为1的页框在第二轮已经处于空闲页框链表中,此刻该页又被重新访问,因此应被重新放回到驻留集中,其页框号为32。
页框号为41。 因为第2页从来没有被访问过,不在驻留集中。因此从空闲链表中取出链表头的页框,页框号为41。
4. 在虚拟内存管理中,地址变换机构将逻辑地址转换为物理地址,形成该逻辑地址的阶段是( )。 ① 编辑 ② 编译 ③ 链接 ④ 装载 5. 采用段式存储管理的系统中,若地址用24位表示,其中8位表示段号,则允许每段的最大长度是_______ A)224 B)28 C) 216 D) 232 6. 作业在执行中发生了缺页中断,经操作系统处理后,应让其执行______指令。 A)被中断的前一条 B)被中断的后一条 C)被中断的 D) 启动时的第一条
7、某基于动态分区存储管理的计算机,其主存容量为55MB(初始为空),采用最佳适配(Best fit)算法,分配和释放的顺序为:分配15MB,分配30MB,释放15MB,分配6MB,此时主存中最大空闲分区的大小是( ) A:7MB B:9MB C:10MB D:15MB
当该进程执行到时刻260时,要访问逻辑地址为17CAH的数据,请问答下列问题: (1)该逻辑地址对应的页号是多少? (2)若采用先进先出置换算法,该逻辑地址对应的物理地址是多少?要求给出计算过程。 (3)若采用时钟置换算法,该逻辑地址对应的物理地址是多少?(设搜索下一页的指针沿顺时针方向移动,且当前指向2号页框)
页号
存储块号
0 1 2 3
5 10 4 7
第四章 操作系统存储管理(练习题答案)
第四章存储管理1. C存储管理支持多道程序设计,算法简单,但存储碎片多。
A. 段式B. 页式C. 固定分区D. 段页式2.虚拟存储技术是 B 。
A. 补充内存物理空间的技术B. 补充相对地址空间的技术C. 扩充外存空间的技术D. 扩充输入输出缓冲区的技术3.虚拟内存的容量只受 D 的限制。
A. 物理内存的大小B. 磁盘空间的大小C. 数据存放的实际地址D. 计算机地址位数4.动态页式管理中的 C 是:当内存中没有空闲页时,如何将已占据的页释放。
A. 调入策略B. 地址变换C. 替换策略D. 调度算法5.多重分区管理要求对每一个作业都分配 B 的内存单元。
A. 地址连续B. 若干地址不连续C. 若干连续的帧D. 若干不连续的帧6.段页式管理每取一数据,要访问 C 次内存。
A. 1B. 2C. 3D. 47.分段管理提供 B 维的地址结构。
A. 1B. 2C. 3D. 48.系统抖动是指 B。
A. 使用计算机时,屏幕闪烁的现象B. 刚被调出内存的页又立刻被调入所形成的频繁调入调出的现象C. 系统盘不干净,操作系统不稳定的现象D. 由于内存分配不当,造成内存不够的现象9.在 A中,不可能产生系统抖动现象。
A. 静态分区管理B. 请求分页式管理C. 段式存储管理D. 段页式存储管理10.在分段管理中 A 。
A. 以段为单元分配,每段是一个连续存储区B. 段与段之间必定不连续C. 段与段之间必定连续D. 每段是等长的11.请求分页式管理常用的替换策略之一有 A 。
A. LRUB. BFC. SCBFD. FPF12.可由CPU调用执行的程序所对应的地址空间为 D 。
A. 名称空间B. 虚拟地址空间C. 相对地址空间D. 物理地址空间13. C 存储管理方式提供二维地址结构。
A. 固定分区B. 分页C. 分段D. 物理地址空间14.当程序经过编译或者汇编以后,形成了一种由机器指令组成的集合,被称为B 。
A. 源程序B. 目标程序C. 可执行程序D. 非执行程序15.目录程序指令的顺序都以0作为一个参考地址,这些地址被称为 A 。
《计算机操作系统》课件第4章
第四章 存 储 器 管 理
3. 运行时动态链接(Run-time Dynamic Linking) 在许多情况下,应用程序在运行时,每次要运行的模块 可能是不相同的。但由于事先无法知道本次要运行哪些模块, 故只能是将所有可能要运行到的模块全部都装入内存,并在 装入时全部链接在一起。显然这是低效的,因为往往会有部 分目标模块根本就不运行。比较典型的例子是作为错误处理 用的目标模块,如果程序在整个运行过程中都不出现错误, 则显然就不会用到该模块。
2
第四章 存 储 器 管 理
4.1.1 多层结构的存储器系统 1. 存储器的多层结构 对于通用计算机而言,存储层次至少应具有三级:最高
层为CPU寄存器,中间为主存,最底层是辅存。在较高档的 计算机中,还可以根据具体的功能细分为寄存器、高速缓存、 主存储器、磁盘缓存、固定磁盘、可移动存储介质等6层。 如图4-1所示。
19
第四章 存 储 器 管 理
4.3 连续分配存储管理方式
4.3.1 单一连续分配 在单道程序环境下,当时的存储器管理方式是把内存分
为系统区和用户区两部分,系统区仅提供给OS使用,它通常 是放在内存的低址部分。而在用户区内存中,仅装有一道用 户程序,即整个内存的用户空间由该程序独占。这样的存储 器分配方式被称为单一连续分配方式。
9
第四章 存 储 器 管 理
4.2 程序的装入和链接
用户程序要在系统中运行,必须先将它装入内存,然后 再将其转变为一个可以执行的程序,通常都要经过以下几个 步骤:
(1) 编译,由编译程序(Compiler)对用户源程序进行编译, 形成若干个目标模块(Object Module);
(2) 链接,由链接程序(Linker)将编译后形成的一组目标 模块以及它们所需要的库函数链接在一起,形成一个完整的 装入模块(Load Module);
操作系统考试必备第四章习题(存储器管理)
一、单项选择题1.在存储管理方案中,可与覆盖技术配合。
A. 页式管理B.段式管理C.段页式管理D.可变分区管理2.在存储管理中,采用覆盖与交换技术的目的是。
A. 节省主存空间B.物理上扩充主存容量C. 提高CPU效率D.实现主存共享3.动态重定位技术依赖于。
A. 重定位装入程序B.重定位寄存器C. 地址机构D.目标程序4. 虚拟存储器的最大容量。
A. 为内外存容量之和B.由计算机的地址结构决定C.是任意的 D. 由作业的地址空间决定5.在虚拟存储系统中,若进程在内存中占3块(开始时为空),采用先进先出页面淘汰算法,当执行访问页号序列为1、2、3、4、l、2、5、1、2、3、4、5、6时,将产生次缺页中断。
A.7 B.8 C.9 D.106.很好地解决了“零头”问题的存储管理方法是。
A. 页式存储管理B.段式存储管理C. 多重分区管理D.可变式分区管理7.系统“抖动”现象的发生是由引起的。
A. 置换算法选择不当B.交换的信息量过大C. 内存容量不足D. 请求页式管理方案8.分区管理中采用“最佳适应”分配算法时,宜把空闲区按次序登记在空闲区表中。
A. 长度递增B.长度递减C. 地址递增D. 地址递减9.在固定分区分配中,每个分区的大小是。
A. 相同B.随作业长度变化C. 可以不同但预先固定D.可以不同但根据作业长度固定10.实现虚拟存储器的目的是。
A. 实现存储保护D.实现程序浮动C.扩充辅存容量D.扩充主存容量11.采用段式存储管理的系统中,若地址用24位表示,其中8位表示段号,则允许每段的最大长度是。
A.224B.216C.28D.23212.作业在执行中发生了缺页中断,经操作系统处理后,应让其执行指令。
A. 被中断的前一条B.被中断的C.被中断的后一条D.启动时的第一条13.把作业地址空间中使用的逻辑地址变成内存中物理地址的过程称为。
A. 重定位B.物理化C.逻辑化D.加载14.首次适应算法的空闲区是。
第4章存储器管理-题库及参考答案
第4章存储器管理-选择题参考答案一、选择题1.【2011统考】在虚拟内存管理中,地址变换机构将逻辑地址变换为物理地址,形成该逻辑地址的阶段是()A.编辑B.编译C.链接D.装载2.下面关于存储管理的叙述中,正确的是()A.存储保护的目的是限制内存的分配B.在内存为M、有N个用户的分时系统中,每个用户占M/N的内存空间C.在虚拟内存系统中,只要磁盘空间无限大,作业就能拥有任意大的编址空间D.实现虚拟内存管理必须有相应硬件的支持3.在使用交换技术时,若一个进程正在(),则不能交换出主存。
A.创建B.I/O操作C.处于临界段D.死锁4.在存储管理中,采用覆盖与交换技术的目的是()A.节省主存空间B.物理上扩充主存容量C.提高CPU效率D.实现主存共享5.【2009统考】分区分配内存管理方式的主要保护措施是()A.界地址保护B.程序代码保护C.数据保护D.保护6.【2010统考】某基于动态分区存储管理的计算机,其主存容量为.55MB(初始为空),采用最佳适配算法,分配和释放的顺序为;分配15MB,分配30MB,释放15MB,分配8MB,分配6MB,此时主存中最大空闲分区的大小是()A.7MBB.9MBC.10MBD.15MB7.段页式存储管理中,地址映射表是()A.每个进程一张段表,两张页表B.每个进程的每个段一张段表,一张页表C.每个进程一张段表,每个段一张页表D.每个进程一张页表,每个段一张段表8.内存保护需要由()完成,以保证进程空间不被非法访问A.操作系统B.硬件机构C.操作系统和硬件机构合作D.操作系统或者硬件机构独立完成9.存储管理方案中,()可采用覆盖技术A.单一连续存储管理B.可变分区存储管理C.段式存储管理D.段页式存储管理10.在可变分区分配方案中,某一进程完成后,系统回收其主存空间并与相邻空闲区合并,为此需修改空闲区表,造成空闲区数减1的情况是()A.无上邻空闲区也无下邻空闲区B.有上邻空闲区但无下邻空闲区C.有下邻空闲区但无上邻空闲区D.有上邻空闲区也有下邻空闲区 11.设内存的分配情况如图所示。
第四章存储器管理
考点一内存管理概念一、单项选择题在下面关于存储功能的论述中正确的是()A.即使在多道程序管理下用户也可以编制用物理地址直接访问内存的程序。
B.内存分配的基本任务是为每道程序分配内存空间,其追求的目的则是提高内存的利用率。
C.为提高内存保护的灵活性,内存保护通常由软件完成。
D.地址映射是指将程序物理地址转变为内存的逻辑地址二、综合应用题1.请列举出逻辑地址和物理地址的两个不同之处。
2.一个进程被换出内存,它就失去了使用CPU的机会。
除了换出内存这种情形,请列举出其它一种情形,进程虽然失去了使用CPU的机会,但它并没有被换出内存。
3.存储管理的主要研究内容是什么?4.什么是动态链接?用何种内存分配方法可以实现这种链接技术?5.某系统把任一程序都分成代码和数据两部分。
CPU知道什么时候要指令(如取指令周期),什么时候要数据(如取数据周期或存数据周期)。
所以,需要两种寄存器(基地址寄存器、界限寄存器),一组用于指令,一组用于数据。
用于指令的是只读的,以便于用户的共享。
请分析这种策略的优缺点。
6.什么是地址的重定位?有哪几种常用的地址重定位的方法?7.在现代计算机系统中,存储器是十分重要的资源,能否合理有效的使用存储器,在很大程度上反映了操作系统的性能,并直接影响到计算机系统作用的发挥。
请问:(1)主存利用率不高主要体现为哪几种形式?(2)可以通过哪些途径来提高主存利用率8.内存保护是否可以完全由软件来实现?为什么?考点二交换与覆盖一、单项选择题1.存储管理方案中,()可采用覆盖技术。
A.单一连续存储管理B.可变分区存储管理C.段式存储管理D.段页式存储管理2.在存储系统管理中,采用覆盖技术与交换技术的目的是( )。
A.节省主存空间B.物理上扩充主存容量C.提高CPU利用率D.实现主存共存二、综合应用题1.在存储管理中,覆盖和对换技术所以解决的是什么问题?各有什么特点?2请写出你对交换过程和覆盖过程的认识,它们的主要区别有哪些?考点三连续分配管理方式一、单项选择题1.在可变式分区分配方案中,某一作业完成后,系统收回其主存空间并与相邻空闲区合并,为此需要修改空闲区表,造成空闲区域减1的情况是()。
计算机操作系统(汤小丹等,第三版)课后答案
第四章存储器管理1. 为什么要配置层次式存储器?这是因为:a.设置多个存储器可以使存储器两端的硬件能并行工作。
b.采用多级存储系统,特别是Cache技术,这是一种减轻存储器带宽对系统性能影响的最佳结构方案。
c.在微处理机内部设置各种缓冲存储器,以减轻对存储器存取的压力。
增加CPU中寄存器的数量,也可大大缓解对存储器的压力。
2. 可采用哪几种方式将程序装入内存?它们分别适用于何种场合?将程序装入内存可采用的方式有:绝对装入方式、重定位装入方式、动态运行时装入方式;绝对装入方式适用于单道程序环境中,重定位装入方式和动态运行时装入方式适用于多道程序环境中。
3. 何为静态链接?何谓装入时动态链接和运行时动态链接?a.静态链接是指在程序运行之前,先将各自目标模块及它们所需的库函数,链接成一个完整的装配模块,以后不再拆开的链接方式。
b.装入时动态链接是指将用户源程序编译后所得到的一组目标模块,在装入内存时,采用边装入边链接的一种链接方式,即在装入一个目标模块时,若发生一个外部模块调用事件,将引起装入程序去找相应的外部目标模块,把它装入内存中,并修改目标模块中的相对地址。
c.运行时动态链接是将对某些模块的链接推迟到程序执行时才进行链接,也就是,在执行过程中,当发现一个被调用模块尚未装入内存时,立即由OS 去找到该模块并将之装入内存,把它链接到调用者模块上。
4. 在进行程序链接时,应完成哪些工作?a.对相对地址进行修改b.变换外部调用符号6. 为什么要引入动态重定位?如何实现?a.程序在运行过程中经常要在内存中移动位置,为了保证这些被移动了的程序还能正常执行,必须对程序和数据的地址加以修改,即重定位。
引入重定位的目的就是为了满足程序的这种需要。
b.要在不影响指令执行速度的同时实现地址变换,必须有硬件地址变换机构的支持,即须在系统中增设一个重定位寄存器,用它来存放程序在内存中的起始地址。
程序在执行时,真正访问的内存地址是相对地址与重定位寄存器中的地址相加而形成的。
第四章 存储器管理(1-2)
物理地址空间
Load A data1
100
Load A 200
1100
Load A 1200
编译 连接
data1 3456 200 3456
地址映射
1200 3456 。 。
第四章 存 储 器 管 理
地址映射的方式
静态地址映射: 1)程序被装入内存时由操作系统的连接装入程序完成 程序的逻辑地址到内存地址的转换; 2)地址转换工作是在程序执行前由装入程序集中一次 完成。 假定程序装入内存的首地址为BR,程序地址为VR,内存 地址为MR,则地址映射按下式进行:MR=BR+VR
② 便于实现对目标模块的共享:将内存中的一个模块可 以连接到多个程序中。 ③ 要运行的程序都必须在装入时,全部连接调入内存。
第四章 存 储 器 管 理
3. 运行时动态链接(Run-time Dynamic Linking) 动态链接方式:将对某些模块的链接推迟到执行时才实施, 亦即,在执行过程中,当发现一个被调用模块尚未装 入内存时,立即由OS去找到该模块并将之装入内存, 把它链接到调用者模块上。特点如下: 特点:凡在执行过程中未被用到的目标模块,都不会被调 入内存和被链接到装入模块上,这样不仅可加快程序 的装入过程,而且可节省大量的内存空间。
硬件支持:在动态地址重定位机构中,有一个基地址寄存器BR和一 个程序地址寄存器VR,一个内存地址寄存器MR。
转换过程:MR=BR+VR
第四章 存 储 器 管 理
把程序装入起始地址为100的内存区
0 100
重定位寄存器 1000
…
MOV r1,[50]
0 1000 1100
… …
MOV r1பைடு நூலகம்[50]
操作系统题目第4章
第四章 存储器管理1、对如图所示的内存分配情况(其中,阴影部分表示已占用块,空白部分表示空闲块),若要申请一块40KB 的内存,对于最佳适应算法,给出分配区域的首地址( )。
A 、100KBB 、190KBC 、330KBD 、410KB2、如右图所示中,若要申请一块40KB 的内存,使首地址最大的分配算法()。
A 、首次适应算法B 、最佳适应算法C 、最坏适应算法D 、循环首次适应算法3、下列算法中产生“抖动”现象的是( )。
A 、先进先出页面置换算法(FIFO)B 、最近最久未使用(LRU)置换算法C 、最不经常使用(LFU)置换算法D 、最佳(Optimal)置换算法4、存储管理是对内存中( )区域进行管理。
A 、整个内存B 、供用户使用的C 、供系统使用的D 、供程序使用的5、下面是关于存储器管理功能的论述,正确的论述是( )和( )。
A 、内存分配最基本的任务是为每道程序分配内存空间,其他追求的主要目标是提高存储空间的利用率。
B 、为了提高内存保护的灵活性,内存保护通常由软件实现。
C 、对换技术已不是现代操作系统中常用的一种技术。
D 、地址映射是指将程序空间中的逻辑地址变为内存空间的物理地址。
E 、虚拟存储器是在物理上扩充内存容量。
6、在下列存储管理方案中,不适用于多道程序的是( )。
A 、单一连续分配B 、固定分区分配C 、动态重定位分区分配D 、段页式存储分配7、在固定分区存储管理中,每个分区的大小是( )。
A 、相同的B 、可以不同但作业长度固定C 、可以不同但预先固定D 、根据用户要求而定0KB100KB 180KB 190KB 280KB 330KB 390KB410KB 512KB8、在固定分区管理中,为了提高内存的利用率,可采用如下技术()。
A、按经常出现的作业大小来划分分区B、划分分区都相同C、不同请求队列中的作业可以申请相同的分区D、大作业可以申请多个分区9、采用固定分区管理的最大缺点是()。
操作系统原理教程(胡元义)-第4章
第4章 存储管理
根据进行地址转换时间的不同,可以将程序装入分为运行 前静态装入和运行时动态装入两种。静态装入指在运行之前一 次性地将程序(装入模块)装入内存,且在装入过程中同时完成 相对地址(逻辑地址)到绝对地址(物理地址)的转换工作。运 行时动态装入是指把装入模块装入内存后,并不立即完成地址 转换,而是把地址转换工作推迟到程序真正执行时才进行。静 态装入时进行的地址转换称为静态地址转换或静态重定位,运 行时动态装入涉及的地址转换称为动态地址转换或动态重定位。
第4章 存储管理
第4章 存储管理
4.1 程序的链接和装入 4.2 存储器及存储管理的基本功能 4.3 分区式存储管理 4.4 分页存储管理 4.5 分段存储管理 4.6 段页式存储管理 4.7 虚拟存储管理
第4章 存储管理
4.1 程序的链接和装入 在多道程序环境中要使程序运行,首先必须为它创建进程, 而创建进程就必须将程序和数据装入内存。能装入内存执行的 程序属于可执行程序。通常,用户编写的源程序要经过以下步 骤才能转变为可执行程序:首先由编译程序把源程序编译成若 干个目标模块,然后由链接程序把所有目标模块和它们需要的 库函数链接在一起,形成一个完整的可装入模块。可装入模块 可以通过装入程序装入内存成为可执行程序,当把CPU分配给 它时就可以投入运行。整个处理过程如图4-1所示。
(2) 装入时动态链接。目标模块的链接是在模块装入内 存时进行的,即在模块装入过程中同时完成所有目标模块的链 接。
第4章 存储管理
(3) 运行时动态链接。先将一个目标模块装入内存且启 动运行,在进程运行过程中如果需要调用其他模块,则再将所 需模块装入内存并把它链接到调用模块上,然后进程继续运行。
上述三种链接方式中,运行时动态链接比较流行,这是因 为它把对某些模块的链接推迟到运行时才进行,这样,凡程序 执行过程中未用到的模块都不会装入内存和链接到运行模块上。 显然,这种链接方式不仅可以节省内存空间,而且加快了程序 目标模块的装入过程。
《操作系统》完整版教案1-6单元全
思考
交流互动
记录笔记
问题引入
(1)固定分区存储管理;
讲授法
启发式
多媒体
课件演示
教师: 提问
学生: 讨论
学生:讨论
知识讲解
知识点4:固定分区存储管理;
讲授法
启发式
多媒体
课件演示
思考
交流互动
记录笔记
问题引入
(1)可变分区存储管理;
讲授法
启发式
多媒体
课件演示
教师: 提问
学生: 讨论
学生:讨论
知识讲解
(3)能安装三卡驱动程序;
(4)熟练操作Windows操作系统。
教学内容
(1)计算机系统概述;
(2)操作系统的发展;
(3)操作系统分类;
(4)操作系统特征;
(5)操作系统基本功能。
重点:
(1)操作系统基本概念;
(2)操作系统分类;
(3)操作系统基本功能。
难点:
(1)操作系统的发展;
(2)操作系统的分类;
2.习题三1、3.7
2.习题三1、3、7
教学过程设计
存储管理(1)(2学时)
主要步骤
教学内容
教学方法
教学手段
师生活动
问题引入
(1)存储管理基本功能;
讲授法
启发式
多媒体
课件演示
教师: 提问
学生: 讨论
学生:讨论
知识讲解
知识点1:存储管理的基本功能;
讲授法
启发式
多媒体
课件演示
思考
交流互动
记录笔记
问题引入
多媒体
布置作业
提出要求
《操作系统》课程教学单元设计3
操作系统第四章存储管理习题 (1)
第四章存储管理习题一、选择题1、存储分配解决多道作业(A)的划分问题。
为了解决静态和动态存储分配,需采用地址重定位,即把(B)变换成(C),静态重定位由(D)实现,动态重定位由(E)实现。
A:①地址空间②符号名空间③主存空间④虚拟空间B、C:①页面地址②段地址③逻辑地址④物理地址⑤外存地址⑥设备地址D~E:①硬件地址变换机构②执行程序③汇编程序④连接装入程序⑤调试程序⑥编译程序⑦解释程序2、提高主存利用率主要是通过(A)功能实现的。
(A)的基本任务是为每道程序做(B);使每道程序能在不受干扰的环境下运行,主要是通过(C)功能实现的。
A、C:①主存分配②主存保护③地址映射④主存扩充B:①逻辑地址到物理地址的变换;②内存与外存间的交换;③允许用户程序的地址空间大于内存空间;④分配内存3、由固定分区方式发展为分页存储管理方式的主要推动力是(A);由分页系统发展为分段系统,进而以发展为段页式系统的主要动力分别是(B)。
A~B:①提高主存的利用率;②提高系统的吞吐量;③满足用户需要;④更好地满足多道程序运行的需要;⑤既满足用户要求,又提高主存利用率。
4、静态重定位是在作业的(A)中进行的,动态重定位是在作业的(B)中进行的。
A、B:①编译过程;②装入过程;③修改过程;④执行过程5、对外存对换区的管理应以(A)为主要目标,对外存文件区的管理应以(B)为主要目标。
A、B:①提高系统吞吐量;②提高存储空间的利用率;③降低存储费用;④提高换入换出速度。
6、从下列关于虚拟存储器的论述中,选出一条正确的论述。
①要求作业运行前,必须全部装入内存,且在运行中必须常驻内存;②要求作业运行前,不必全部装入内存,且在运行中不必常驻内存;③要求作业运行前,不必全部装入内存,但在运行中必须常驻内存;④要求作业运行前,必须全部装入内存,且在运行中不必常驻内存;7、在请求分页系统中有着多种置换算法:⑴选择最先进入内存的页面予以淘汰的算法称为(A);⑵选择在以后不再使用的页面予以淘汰的算法称为(B);⑶选择自上次访问以来所经历时间最长的页面予淘汰的算法称为(C);A~D:①FIFO算法;②OPT算法;③LRU 算法;④NRN算法;⑤LFU算法。
- 1、下载文档前请自行甄别文档内容的完整性,平台不提供额外的编辑、内容补充、找答案等附加服务。
- 2、"仅部分预览"的文档,不可在线预览部分如存在完整性等问题,可反馈申请退款(可完整预览的文档不适用该条件!)。
- 3、如文档侵犯您的权益,请联系客服反馈,我们会尽快为您处理(人工客服工作时间:9:00-18:30)。
作业1申请130K 作业2申请60K 作业3申请100K 作业2释放60K 作业4申请200K
• • • • • •
作业3释放100K 作业1释放130K 作业5申请140K 作业6申请60K 作业7申请50K 作业6释放60K
操作
首次适应
已分配分区 (作业 始址 大小) 空闲分区 (作业 始址 大小)
41
练习题 4
• 动态重定位的方式有哪几种? ① 连续分配方式下的重定位 ② 离散分配方式下的重定位
42
练习题 5
• 内存保护是否可以完全由软件来实现? 为什么?
43
练习题 6
• 整体对换是否将整个进程换出?能否说 “整体对换从逻辑上也扩充了内存,整 体对换实现了虚拟存储器功能”?
44
45
46
1) 2) 3) 4) 5) 编辑阶段—创建源文件 编译阶段—生成目标文件(目标模块) 连接阶段—生成可执行文件(装入模块) 装入阶段—地址重定位,装入内存 运行阶段—得到结果
7
用户程序处理的三个步骤(图4-1):
编译—链接—装入
8
4.2.1 程序的装入
1.绝对装入方式
程序逻辑地址与内存中绝对地址相同,即 编译时生成的目标模块使用的地址与装入 内存的地址一致。
3
4.1.2 主存储器与寄存器
1 主存储器:是指CPU能直接存取指令和数据的 存储器。CPU和I/O系统都要和内存打交道, 对内存的访问是通过一系列对指定地址单元进 行读或写来实现的。
CPU
内存
I/O系统
外 设
4
2. 寄存器
• 寄存器访问速度最快,完全能够与CPU 协作,价格昂贵。 • 长度一般以字为单位 • 用于加速存储器的访问速度。
18
4.3 连续分配方式
• 连续分配方式:是指为一个用户程序分 配一个连续的内存空间。 • 连续分配包括:单一连续分配、固定分 区分配、动态分区分配、动态重定位分 区分配。
19
4.3.1 单一连续分配
又叫单用户连续分配,内存分系统区和 用户区,用于单用户单任务操作系统。
20
4.3.2 固定分区分配
27
4)最坏适应算法: • 空闲分区按容量由大到小排列成一个空 闲分区链,选一个最大的空闲分区分配 给作业使用。 • 不会形成太多的不可用的小分区,但缺 少大的分区。
28
5)快速适应算法
• 按照空闲分区的大小进行分类,形成多 个空闲分区链,另设一张管理索引表 • 属于分类搜索法
29
3 分区分配操作
34
2 对换空间的管理 • 将外存分为文件区和交换区 • 文件区存放长期保存的文件,采用离散分 配,目的就是提高文件存储器的利用率。 • 交换区存放频繁换入换出的进程,采用连 续分配,目标是提高换入换出速度。
35
3 进程的换入和换出 • 换出过程:处于阻塞且优先级最低为换出 进程 • 换入过程:处于就绪状态但已换出的进程
• 在动态运行时装入方式中,作业装入内 存后所有的地址仍然是相对地址,将相 对地址转换成物理地址的工作推迟到程 序执行时进行。为了不影响指令的执行 速度,必须由硬件地址变换机构支持 (图4-9)
32
3 动态重定位分区分配操作
动态重定位分区分配操作与动态分区分 操作法基本相同,差别在于增加了紧凑 功能,(图4-10)
33
4.3.7 对换
1 对换的引入
• 所谓“对换”是指把内存中暂时不能运行的进 程或暂时不用的程序或数据调出到外存,腾出 空间,再把外存上具备运行条件的进程或数据 调入内存。即内存与外存数据交换。 • 整体对换(进程对换):提高内存利用率,解决 内存紧张问题。 • 部分对换(页面对换,分段对换):支持虚拟 存储器系统
• 分区管理是能够满足多道程序运行的最简 单的存储管理方案。
• 分区分配的基本思想是把内存划分成若干 个连续区域,每个分区装入一个运行程序。 • 分区分配可归纳成固定分区和可变分区。
21
4.3.2 固定分区分配
固定分区分配的基本思想:将内存用户 空间划分为若干个固定大小区域,一旦 划分好,在运行期间不再重新划分。每 个分区装入一个作业。 • 划分分区的方法:分区大小相等;分区 大小不等: • 内存分配:分区使用表(图4-4)包括分 区的起始地址,大小,状态
13
2 装入时动态链接 目标模块边装入边链接。 • 装入时动态链接的优点: ① 便于修改和更新 ② 便于实现目标模块的共享
14
3 运行时动态链接 只链接需要运行的模块,加快程序的装入, 提高内存利用率
思考:三种程序的装入和链接方式的优缺 点比较。
15
答 案
• 绝对装入:不需要地址转换,但只适用于 单道程序处理环境。 • 可重定位装入:地址变换通常在装入时一 次完成,但不允许程序运行时移动位置。 • 动态运行时装入:在装入时不进行地址转 换,在运行时动态的转换,需要硬件的支 持。
25
2)循环首次适应算法:
• 从上次找到的空闲分区开始向下找,直到找到 一个大小能够满足要求的分区为止。 • 采用循环查找方式 • 该方法使内存中的空闲分区分布更均匀,减少 了查找空闲分区的开销,但会使内存缺乏大的 空闲分区。
26
3)最佳适应算法: • 空闲分区按照由小到大顺序形成一个空 闲分区链,每次为作业分配内存时,总 是把能够满足要求、又是最小的空闲分 区分配给作业,避免大材小用。 • 该算法产生小的空闲区
第四章 存储器管理
1 2 3 4 5 6 7 8 9 ( ) 存储器的层次结构 程序的装入和链接 连续分配方式 基本分页存储管理方式 基本分段存储管理方式 虚拟存储器的基本概念 请求分页式存储管理方式 页面置换算法 请求分段式存储管理方式
1
4.1 存储器的层次结构
在理想情况下,存储器应该:速度快、容 量大、价格便宜。 4.1.1多级存储结构
16
• 静态链接:实现简单,但程序模块的修改 和更新难,不易实现共享。 • 装入时动态链接:便于对程序模块进行修 改和更新,并且可以对目标模块共享。 • 运行时动态链接:便于修改和更新,实现 共享,还可以加速装入,提高内存的利用 率。
17
知识回顾
• 什么叫做逻辑地址,什么叫做物理地址? • 程序的装入方式有三种,分别是什么? • 程序的链接方式有三种,分别是什么?
22
4.3.3 动态分区分配(可变分区分配)
• 为了解决内存浪费问题,系统不预先划分固 定分区,而是在装入程序时为各作业分配其 大小恰好适应作业大小的空间,且分区的个 数是可变的。 • 根据进程的需要,动态的分配内存空间。
• 在实际分配中涉及到:分区分配所用的数据 结构、分区分配算法、分区的分配和回收工 作。
9
逻辑地址(相对地址):用户程序经编译之后的 地址,一般情况下,每个目标模块都以0为基地 址顺序编址。 绝对地址(物理地址):内存中各物理存储单元 的地址,是从统一的基地址顺序编址。
10
2.可重定位装入(图4-2)方式
• 程序和数据装入内存时需对装入模块中的地址 进行修改,这种把逻辑地址转变为内存物理地 址的过程叫地址重定位。 • 又因为地址变换通常是在装入时一次完成的, 以后不再修改,所以又叫静态重定位。
23
1 分区分配中的数据结构
已分配分区表: 分区序号、分区始地址、大小、状态标志 空闲分区表: 分区序号、分区始地址、大小、状态标志 空闲分区链(图4-5):双向链接
空闲分 区的两 种形式
24
2 分区分配算法
1)首次适应算法FF:
• 空闲分区以地址递增的顺序排列,从头开始找 到一个大小能够满足要求的分区为止。 • 该算法首先利用内存中低址部分的空闲分区。 • 低址部分不断被划分,留下了难以利用的小的 空闲分区。 • 每次查找都从低址部分开始,增加了查找空闲 分区的时间开销。
5
4.1.3 高速缓存器(Cache)和磁盘缓存
1.高速缓存 • Cache由硬件寄存器构成,CPU可直接存取其中 的信息,存取速度远大于内存,Cache直接做在 CPU中。 2.磁盘缓存 利用主存储器空间暂存从磁盘中读出或写入的 信息,减少访问磁盘的次数。
6
4.2 程序的装入和链接
用户程序的主要处理阶段:
11
3.动态运行时装入方式
装入程序把装入模块装入内存后,并不立即将 相对地址转换成绝对地址,而是把地址转换推 迟到程序执行时才进行。
12
4.2.2 程序的链接
1 静态链接方式(图4-3)
程序运行之前链接目标模块和需要的库函数,以 后不再拆开。 • 静态链接必须解决两个问题: ① 相对地址进行修改 ② 变换外部调用符
36
总结
• 存储器的层次 • 程序的装入和链接 • 连续分配方式
37
练习题 1
• 某系统采用动态分区分配方式管理内存, 内存空间640k,高端40k存放操作系统。在 内存分配时优先使用低端空间,对下列请 求序列,分别绘图表示首次适应算法和最 佳适应算法进行•
内存的分配(图4-6)与回收(图4-7)
30
4.3.6 可重定位分区分配
1 动态重定位的引入
由于内存零头或碎片存在,会使大的作业不 能装入,因此要拼接或紧凑这些碎片形成一 个大的存储空间(图4-8),在此过程中需 要对已经装入的用户程序进行移动,即对用 户程序的地址重定位。
31
2 动态重定位的实现
最佳适应
39
练习题2
存储器管理的基本任务?
• 为多道程序的并发执行提供良好的存储器环境, 具体包括: 各得其所,独立运行 实现虚拟存储器,为用户提供大的存储空间 为用户对信息的使用提供方便 使存储器有较高的利用率
① ② ③ ④
40
练习题 3
• 在什么情况下需要进行重定位?为什么 引入动态重定位?
CPU寄存器