1、第四章 存储器管理学号 姓名一、单项选择题存储管理的目的是(方便用户和提高内存利用率) 。外存(如磁盘)上存放的程序和数据(必须在 CPU 访问之前移入内存) 。当程序经过编译或者汇编以后,形成了一种由机器指令组成的集合,被称为(目标程序)4、可由 CPU 调用执行的程序所对应的地址空间为(物理地址空间) 。5、经过(动态重定位) ,目标程序可以不经过任何改动而装入物理内存单元。6、若处理器有 32 位地址,则它的虚拟地址空间为(4GB)字节。7、分区管理要求对每一个作业都分配(地址连续)的内存单元。8、 (对换技术)是指将作业不需要或暂时不需要的部分移到外存,让出内存空间以调入其他所需数据。
2、9、虚拟存储技术是(补充相对地址空间的技术) 。10、虚拟存储技术与(分区管理)不能配合使用。11、以下存储管理技术中,支持虚拟存储器的技术是(对换技术) 。12、在请求页式存储管理中,若所需页面不在内存中,则会引起(缺页中断) 。13、在分段管理中, (以段为单位分配,每段是一个连续存储区) 。14、段页式存储管理汲取了页式管理和段式管理的长处,其实现原理结合了页式和段式管理的基本思想,即(用分段方法来分配和管理用户地址空间,用分页方法来管理物理存储空间) 。15、段页式管理每取一次数据,要访问(3)次内存。16、碎片现象的存在使得(内存空间利用率降低) 。下列(段页式管理)存储管理方式能使
3、存储碎片尽可能少,而且使内存利用率较高。系统抖动是指(刚被调出的页面又立刻被调入所形成的频繁调入调出现象) 。在请求分页系统中,LRU 算法是指(近期最长时间以来没被访问的页先淘汰) 。为了实现存储保护,对共享区域中的信息(只可读,不可修改 )。21、单一连续存储管理时,若作业地址空间大于用户空间,可用( 覆盖技术) 把不同时工作的段轮流装入主存区执行。 动态重定位是在作业的( 执行过程 )中进行的。固定分区存储管理一般采用(顺序分配算法 )进行主存空间的分配。( 固定分区 )存储管理支持多道程序设计,算法简单,但存储碎片多。可变分区管理方式按作业需求量分配主存分区,所以( 分区的长度不是预先
4、固定的,分区的个数是不确定的 )。 分页存储管理时,每读写一个数据,要访问(2 次 )主存。段式存储管理中分段是由用户决定的,因此( )。段内的地址和段间的地址都是连续的 B段内的地址是连续的,而段间的地址是不连续的 c 段内的地址是不连续的,而段间的地址是连续的 D 段内的地址和段间的地址都是不连续的( )实现了两种存储方式的优势互补。 A固定分区存储管理 B可变分区存储管理 c页式存储管理 D 段页式存储管理 采用虚拟存储器的前提是程序的两个特点,是程序执行时某些部分是互斥的、二是程序的执行往往具有( )。 A顺序性 B并发性 C 局部性 D并行性 在页面调度中,有一种调度算法采用堆栈方法
5、选择( )A最先装入主页的页 B最近最少用的页 c最近最不常用的页 D最晚装入的页 1、在现代操作系统中,不允许用户干预内存的分配。 ( )2、固定分区式管理是针对单道系统的内存管理方案。 ( )3、采用动态重定位技术的系统,目标程序可以不经任何改动,而装入物理内存。 ( )4、可重定位分区管理可以对作业分配不连续的内存单元。 ( )5、利用交换技术扩充内存时,设计时必须考虑的问题是:如何减少信息交换量、降低交换所用的时间。 ( )6、在虚拟存储方式下,程序员编制程序时不必考虑主存的容量,但系统的吞吐量在很大程度上依赖于主存储器的容量。 ( )7、在页式存储管理方案中,为了提高内存的利用效率,
6、允许同时使用不同大小的页面。 ( )8、页式存储管理中,一个作业可以占用不连续的内存空间,而段式存储管理,一个作业则是占用连续的内存空间。 ( )1、3、5、6 是正确的。2、改正为:固定分区式管理是支持多道程序系统的一种存储管理方式。4、改正为:可重定位分区管理必须把作业装入到一个连续的内存空间中。7、改正为:在页式存储管理方案中,不允许同时使用不同大小的页面。8、改正为:页式存储管理和段式存储管理,一个作业都可以占用不连续的内存空间。1、在页式管理中,页表的作用是实现从_页号_ 到 _物理块号_的地址映射,存储页表的作用是 _记录内存页面的分配情况_ 。2、动态存储分配时,要靠硬件地址变换
7、机构实现_ 重定位_ 。3、在多道程序环境中,用户程序的相对地址与装入内存后的实际物理地址不同,把相对地 址转换为物理地址,这是操作系统的 _重定位_ 功能。4、 用户编写的程序与实际使用的物理设备无关,而由操作系统负责地址的重定位,我们称 之为_设备独立性_ 。5、在页式管理中,页式虚地址与内存物理地址的映射是由页表和硬件地址变换机构完成的。6、请求页式管理中,页表中状态位的作用是 _指示该页是否调入内存_ ,改变位的作用是 _指示该页调入内存后是否被修改过_ 。7、在请求页式管理中,当_OS_ 发现所需的页不在_内存_ 时,产生中断信号,_缺页中断处理程序_ 作相应的处理。 8、常用的内存
8、管理方法有 _硬件法,软件法,软硬件结合 _ 。9、段式管理中,以段为单位分配内存,每段分配一个连续的内存_区。由于各段长度不等,所以这些存储区的大小不一,而且同一进程的各段之间不要求_连续 。10、在存储管理中,为实现地址映射,硬件应提供两个寄存器,一个是基址寄存器,另一个是限长寄存器。11、实现虚拟存储技术的物质基础是 二级存储器结构 和动态地址转换机构 。12、在页式管理中,页表的作用是实现从 页号 到 物理块号 的地址映射,存储页表的作用是 记录内存页面的分配情况 。13、在段页式存储管理系统中,面向 用户 的地址空间是段式划分,面向 物理实现 的地址空间是页式划分。14 存储器以字节
9、为编址单位,每一个字节有一个地址与其对应,这些地址称为内存的_绝对_地址,其对应的存储空间称为 绝对地址 空间。15、为提高地质变换速度,在基本分页存储管理的地址变换机构中增设一个高速缓冲寄存器,称为快表或联想寄存器。1、解释下列概念:逻辑地址、物理地址、重定位用户程序经编译之后的每个目标模块都以 0 为基地址顺序编址,这种地址称为逻辑地址。内存中各存储单元的地址是从统一的基地址顺序编址,这种地址称为物理地址。把逻辑地址转变为内存的物理地址的过程叫重定位。2、什么是虚拟存储器?它有哪些基本特征?虚拟存储器是由操作系统提供的一个假想的特大存储器。它的基本特征是: 虚拟扩充不是物理上,而是逻辑上扩
10、充了内存容量;部分装入每个作业不是全部一次性地装入内存,而是只装入一部分;离散分配不必占用连续的内存空间,而是“见缝插针” ;多次对换所需的全部程序和数据要分成多次调入内存。3可变分区方式常用的主存分配算法有哪几种?常用的主存分配算法有:最先适应分配算法,最优适应算法和最坏适应算法。4简述虚拟存储器的工作原理。把作业信息保留在磁盘上,当作业请求装入时,只将其中一部分先装入主存储器,作业执行时若要访问的信息不在主存中,则再设法把这些信息装入主存。这就是虚拟存储器的工作原理。5何谓页表和快表?它们各起什么作用? 页表指出逻辑地址中的页号与所占主存块号的对应关系。页式存储管理在用动态重定位方式装入作
11、业时、要利用页表做地址转换工作。快表就是存放在高速缓冲存储器的部分页表。它起页表相同的作用。由于采用页表做地址转换,读写内存数据时 cPu要访问两次主存。有了快表,有时只要访问一次高速缓冲存储器,一次主存,这样可加速查找并提高指令执行速度。6常用的页面调度算法有哪几种?影响缺页中断有哪几个主要因素? 常用的页面调度算法有:先进先出调度算法(FIFO),最近最少用调度算法(LRU)和最近最不常用调度算法(LFU)。(1)分配给作业的主存块数多则缺页率低,反之则缺页中断率就高。(2) 页面大,缺页中断率低;页面小缺页中断率高。 (3)程序编制方法。以数组运算为例,如果每一行元素存放在一页中,则按行
12、处理各元素缺页中断率低;反之,按列处理各元素,则缺页中断率高。 (4)页面调度算法对缺页中断率影响很大,但不可能找到一种最佳算法五、计算题1、某虚拟存储器的用户编程空间共32个页面,每页为1KB,内存为16KB 。假定某时刻一用户页表中已调入内存的页面的页号和物理块号的对照表如右:则逻辑地址0A5C(H)所对应的物理地址是什么?要求:写出主要计算过程。分析 页式存储管理的逻辑地址分为两部分:页号和页内地址。由已知条件“用户编程空间共 32 个页面”,可知页号部分占 5 位;由“每页为 1KB”,1K=2 10,可知内页地址占 10 位。由“内存为 16KB”,可知有 16 块,块号为 4 位。
13、逻辑地址 0A5C(H)所对应的二进制表示形式是:000 1010 0101 1100 ,根据上面的分析,下划线部分为页内地址,编码 “000 10” 为页号,表示该逻辑地址对应的页号为 2。查页表,得到物理块号是 4(十进制),即物理块地址为:01 00 ,拼接块内地址 10 0101 1100,得 01 0010 0101 1100,即 125C(H)。 解 逻辑地址 0A5C(H)所对应的物理地址是 125C(H)。2、对于如下的页面访问序列:1, 2, 3, 4, 1, 2, 5, 1, 2, 3, 4, 5当内存块数量为 3 时,试问:使用 FIFO、LRU 置换算法产生的缺页中断是
14、多少?写出依次产生缺页中断后应淘汰的页。 (所有内存开始时都是空的,凡第一次用到的页面都产生一次缺页中断。要求写出计算步骤。 )*表示缺页中断内存块数量为 3 时(FIFO):NULL,NULL,1*;NULL,1,2*;1,2,3*;2,3,4*;3,4,1*;4,1,2*;1,2,5*;1,2,5;1,2,5;2,5,3*;5,3,4*;5,3,4共有 9 次内存块数量为 3 时(LRU):NULL,NULL,1*;NULL,1,2*;1,2,3*;2,3,4*;3,4,1*;4,1,2*;1,2,5*;2,5,1;5,1,2;1,2,3*;2,3,4*;3,4,5*共有 10次内存块数量
15、为 4 时(FIFO):同上理,共有 10 次页号 物理块号0 31 72 43 8内存块数量为 4LRU):同上理,共有 8 次1解:FIFO 淘汰算法:内存块为 3 时,缺页中断(或称缺页次数、页面故障)为 9;内存块为 4 时,缺页中断为 10。LRU 淘汰算法:内存块为 3 时,缺页中断为 10;内存块为 4 时,缺页中断为 8。3、现有一个作业,在段式存储管理的系统中已为其主存分配,建立的段表内容如右:计算逻辑地址(2,15) , (0,60) , (3,18)的绝对地址是多少?注:括号中第一个元素为段号,第二个元素为段内地址。1解:段式存储管理的地址转换过程为:(1)根据逻辑地址中
16、的段号查段表的相应栏目;(2)根据段内地址40,地址越界,系统发出“地址越界”中断。逻辑地址(3,18)查段表得段长度为 20,段内地址 1820,地址不越界,段号 3 查表得段首地址为 370,于是绝对地址=370+18=388。4在请求分页系统中,某用户的编程空间为 16 个页面,每页 1K,分配的内存空间为 8K。假定某时刻该用户的页表如下图所示,试问:(1)逻辑地址 084B(H)对应的物理地址是多少?(用十六进制表示) (2)逻辑地址 5000(十进制)对应的物理地址是多少?(用十进制表示) (3)当该用户进程欲访问 24A0H 单元时,会出现什么现象? 页号 块号0 31 72 4
17、3 14 12段号 主存起始地址 段长度0 120 401 760 302 480 203 370 205 96 617 20此题答案为: (1)答:104B(H)(2)答:13192(3)答: 24A0(H)的页号为 9,而其页面当前不在内存,所以会发一个缺页中断,请求系统调页。 5.请求分页管理系统中,假设某进程的页表内容如下表所示。 页号 页框(Page Frame)号 有效位(存在位)0 101H 11 02 254H 1页表内容页面大小为 4KB,一次内存的访问时间是 100ns,一次快表(TLB)的访问时 间是 10ns,处理一次缺页的平均时间为 108ns(已含更新 TLB 和页
18、表的时间) , 进程的驻留集大小固定为 2,采用最近最少使用置换算法(LRU)和局部淘汰策 略。假设TLB 初始为空; 地址转换时先访问 TLB,若 TLB 未命中,再访问页 表(忽略访问页表之后的 TLB 更新时间) ;有效位为 0 表示页面不在内存,产 生缺页中断,缺页中断处理后,返回到产生缺页中断的指令处重新执行。设有虚 地址访问序列 2362H、1565H、25A5H,请问:(1) 依次访问上述三个虚地址,各需多少时间?给出计算过程。(2) 基于上述访问序列,虚地址 1565H 的物理地址是多少?请说明理由。1)2362H:P=2,访问快表 10ns,因初始为空,访问页表 100ns
19、得到页框号,合成物理地址后访问主存 100ns,共计 10ns+100ns+100ns=210ns。1565H:p=1,访问快表 10ns,落空,访问页表 100ns 落空,进行缺页中断处理 108ns,合成物理地址后访问主存 100ns,共计 10ns+100ns+108ns+100ns108ns。25A5H:p=2,访问快表,因第一次访问已将该页号放入快表,因此花费 10ns 便可合成物理地址,访问主存 100ns,共计 10ns+100ns=110ns。(2)当访问虚地址 1565H 时,产生缺页中断,合法驻留集为 2,必须从页表中淘汰一个页面,根据题目的置换算法,应淘汰 0 号页面,因此 1565H 的对应页框号为 101H。由此可得 1565H 的物理地址为 101565H。