第3章 存储管理 练习题.docx
《第3章 存储管理 练习题.docx》由会员分享,可在线阅读,更多相关《第3章 存储管理 练习题.docx(11页珍藏版)》请在冰豆网上搜索。
第3章存储管理练习题
第3章存储管理
3.1计算机系统中的存储器
3.2重定位
1.主存的地址空间常称为P39(C)
A.逻辑地址空间 B.程序地址空间C.物理地址空间D.相对地址空间
2.支持程序浮动的地址转换机制是P40(D)
A.页式地址转换B.段式地址转换C.静态重定位D.动态重定位
3.要保证一个程序在主存中被改变了存放位置后仍能正确执行,则对主存空间应采用下列哪个技术。
(B)
A.静态重定位B.动态重定位C.动态分配D.静态分配
4.动态重定位是在下列哪种情况下完成的(C)
A.作业执行前集中一次B.作业执行过程中集中一次
C.作业执行过程中D.作业执行过程中由用户完成
5.采用静态重定位方式装入的作业,在作业执行过程中进行地址转换的是(B)
A.由软件和硬件相互配合 B.由软件独立
C.只需要硬件 D.不需要
3.3单用户连续存储管理
6.在以下存贮管理方案中,不适用于多道程序设计系统的是(A)
A.单用户连续分配B.固定式分区分配C.可变式分区分配D.页式存贮管理
7.MS-DOS的内存空间采用的存储管理方式是(D)
A.固定分区B.可变分区C.页式D.单连续
3.4固定分区存储管理
8.采用固定分区方式管理主存储器的最大缺点是(B)
A.不利于存储保护B.主存空间利用率不高
C.要有硬件的地址转换机构D.分配算法复杂
9.下面的存储管理方案中,可以采用静态重定位的是(A)
A.固定分区B.可变分区C.页式D.段式
3.5可变分区存储管理
10.每次分配时总是顺序查找空闲区表,找到第一个能满足作业长度要求的空闲区,此种分配算法称为(A)
A.最先适应分配算法B.最优适应分配算法C.最坏适应分配算法D.随机适应分配算法
11.在可变分区存储管理中,为了实现主存的空间分配,应设置(D)
A.页表B.段表C.位示图D.空闲区表
12.在可变分区分配方案中,为了实现主存的空间分配,管理采用(D)
A.页表B.段表
C.段表+页表D.分区分配表+空闲区表
13.在可变式分区存储管理中,某作业完成后要收回其主存空间,该空间可能与相邻空闲区合并,在修改空闲区表时使空闲区数不变且空闲区起始地址不变的情况是(C)
A.无上邻空闲区也无下邻空闲区B.有上邻空闲区但无下邻空闲区
C.无上邻空闲区但有下邻空闲区D.有上邻空闲区也有下邻空闲区
14.在一个可变分区存储管理中,最坏适应分配算法宜将空闲区表中的空闲区按下列次序排列的是(D)
A.地址递增B.地址递减C.长度递增D.长度递减
15.可变分区方式常用的主存分配算法有:
最先适应、最优适应和最坏适应分配算法,其中,按分区大小排序组织空闲区表的是(B)
A.最先适应和最坏适应 B.最优适应和最坏适应
C.最先适应和最优适应 D.最先适应、最优适应和最坏适应
3.6页式虚拟存储管理
16.实现虚拟存储器的目的是(A)
A.扩充主存容量B.扩充辅存容量C.实现存储保护D.加快存取速度
17.分页式存储管理时,每读写一个数据,要访问主存(B)
A.1次 B.2次 C.3次 D.4次
18.在存储管理的各方案中,可扩充主存容量的管理方案是(D)
A.固定式分区分配B.可变式分区分配C.页式存储管理D.分页虚拟存储管理
19.页式存储管理中的页表是由(C)
A.用户建立B.编译程序建立C.操作系统建立 D.编辑程序建立
20.在页式虚拟存储管理中,为实现地址变换,应建立(C)
A.空闲区表B.分区分配表C.页表D.段表
21.在采用页式存储管理的系统中,(B)
A.不可以把作业分散到几个不连续的主存区域B.不需要采用移动技术移动作业区
C.不需要硬件支持D.不采用动态重定位的方式装入作业
22.在页式存储管理方案中,为地址转换提供依据需建立(A)
A.页表B.段表C.段表和页表D.空闲区表
23.LRU页面调度算法是选择先调出的页面是(B)
A.最近才使用的B.最久未被使用的C.驻留时间最长的D.驻留时间最短的
24.如果处理器有32位地址,则它的虚拟地址空间为(B)
A.2GBB.4GBC.640KBD.16MB
25.在请求页式存储管理中,产生缺页中断是因为查找的页不在(B)
A.外存中B.虚存中C.内存中D.地址空间中
26.采用段式存储管理的系统中,若地址用24位表示,其中8位表示段号,则允许每段的最大长度是(B)
A.224 B.216 C.28 D.232
1.把逻辑地址转换成绝对地址的工作称为。
P39重定位
2.采用重定位时不允许作业在执行过程中改变存放区域。
P41静态
3.采用动态重定位时一定要有硬件的机构作支持。
P40地址转换
4.主存储器与存储设备进行信息交换的物理单位是。
物理块
5.可变分区管理主存时,可以采用技术把分散的主存空闲区集中起来。
移动
6.采用可变分区方式管理主存时,主存分配表由两张表格组成,一张是已分配区表,另一张是。
空闲区表
7.若允许用户使用的逻辑地址空间大于主存储器的绝对地址空间,则应采用存储管理技术。
虚拟
8.在页式存储管理系统中,可以使用来构成主存分配表,以记录主存中块的分配情况。
页表
9.页式存储管理中的页表是由建立的。
操作系统
10.当采用分页式虚拟存储管理时,如果在作业执行过程中需访问的页面不在主存储器中,则硬件将发出一个中断。
缺页
1.重定位:
为了保证CPU执行程序指令时能正确访问存储单元,需要将程序中的逻辑地址转换为运行时可由机器直接寻址的物理地址,这一过程称为地址映射或重定位。
P39
2.物理地址空间:
把主存空间的地址编号称为主存储器的“绝对地址”,由“绝对地址”对应的主存空间称“物理地址空间”。
P39
3.绝对地址:
主存储器的存储单元以字节为单位,每个存储单元都有一个地址与其对应。
把主存空间的地址编号称为主存储器的“绝对地址”,其编号从0开始。
P39
4.逻辑地址:
用户程序中使用的地址称为“逻辑地址”,(2分)每个地址空间都是从“0”开始的。
(1分)P39
5.存储保护:
存储保护为了防止各存储区域中的程序互相干扰(2分),所采取的保护措施。
(1分)
6.地址转换:
为了保证CPU执行程序指令时能正确访问存储单元,(1分)需要将程序中的逻辑地址转换为运行时可由机器直接寻址的物理地址,这一过程称为地址转换。
(2分)P39
7.页表:
页表是一种指出逻辑地址中的页号(1分)和主存中的块号之间(1分)对应关系的数据结构。
(1分)
8.逻辑地址空间:
用户程序中使用的地址称“逻辑地址”,(1分)由逻辑地址对应的存储空间称“逻辑地址空间”。
(2分)P39
1.简述虚拟存储器的工作原理。
答:
虚拟存储器技术是为了扩充主存容量。
其基本原理是只将作业的一部分装入主存就启动作业执行,在执行中遇到需要不在主存的那一部分内容时,再请求装入,撤换现有主存中的作业的部分内容,这样就可以以较少的主存容量运行更多的作业。
2.简述固定分区存储管理和可变分区存储管理的区别。
答:
固定分区存储管理是把主存储器预先划分成若干个连续区,每个连续区称为一个分区。
一旦划分好后,在系统运行过程中分区的大小和个数固定不变。
一般采用静态重定位的方式装入作业,作业在执行过程中不能改变存放位置。
可变分区存储管理是在装入作业时按作业的实际需求量划分分区,随着作业的不断装入、执行和撤离,分区的个数和长度也会不断地发生变化。
为提高主存空间的利用率,采用动态重定位方式装入作业,作业执行过程中只要满足移动条件就可改变在主存中的存放位置,但要有硬件的地址转换机构作支持。
3.简述页式存储管理中地址转换过程。
答:
首先,操作系统为每个作业创建一张页表(2分),它建立了逻辑地址中的页号到绝对地址中的块号的映射。
然后,借助于硬件地址转换机构(1分),在作业执行过程中,每执行一条指令时,按逻辑地址中的页号查页表得到对应的块号,再根据公式“绝对地址=块号×块长+页内地址”换算出欲访问的主存单元的绝对地址。
(2分)
4.简述存储管理的功能。
答:
存储管理的功能主要有,重定位(1分),存储空间的分配和回收(2分),存储保护(1分),存储扩充(1分)
5.简述页式存储管理实现虚拟存储器的基本思想。
答:
基本思想是:
只需将作业的全部信息作为副本存放在磁盘上,作业被调度投入到运行时(2分),至少把第一页信息装入主存储器(1分),在作业执行过程中访问到不在主存储器的页的时候,再把它们装入到主存。
(2分)
6.什么叫“抖动”?
怎样衡量页面调度算法的好坏?
答:
如果选用了一个不合适的调度算法,就会出现这样的现象:
刚被淘汰了的页面又立即要用,又要把它调入进来(2分),而调入不久又被调出,调出不久再次被调入,如此反复,使得调度非常频繁(2分),以至于大部分时间都花费在来回调度上。
这种现象叫“抖动”。
一个好的调度算法应减少和避免抖动现象(1分)。
7.常用的页面调度算法有哪些?
答:
(1)先进先出调度算法(FIFO):
该算法淘汰进入内存时间最长的页面。
(2分)
(2)最近最少使用调度算法(LRU):
该算法淘汰上一次访问时间距当前时间间隔最长的页面,算法的实现开销较大,需要有硬件支持。
(2分)
(3)最近最不经常使用调度算法(LFU):
该算法淘汰最近一段时间内,访问次数最少的页面。
(1分)
8.什么是虚拟页式存储管理中的颠簸(抖动)问题?
造成颠簸的因素有哪些?
答:
颠簸问题又称抖动问题,在虚存中,页面在内存与外存之间频繁地调度,(1分)以至于系统用于调度页面所需要的时间比进程实际运行所占用的时间还多。
此时,系统效率急剧下降,我们说发生了颠簸。
(2分)颠簸产生的原因有多种因素,主要如,页面淘汰算法不合理;(1分)分配给一个进程的内存物理页面数太少(1分)等等。
9.什么是重定位?
重定位有哪些类型?
P39
答:
把逻辑地址转换成绝对地址的工作称为重定位。
(2分)重定位的方式有两种:
(1分)
(1)静态重定位。
在装人一个作业时,把该作业中的指令地址和数据地址全部转换成绝对地址。
(1分)
(2)动态重定位。
在作业执行过程中由硬件的地址转换机构把逻辑地址转换成绝对地址。
(1分)
1.
某系统采用可变分区方式管理主存储器,在主存分配情况如图所示时,有4个作业要求装入主存,它们各自所需的主存空间为:
J1:
8KB,J2:
15KB,J3:
30KB,J4:
115KB,系统不允许移动。
请回答下列问题:
(1)描述最先适应分配算法。
(2)采用最先适应分配算法分配主存,应按怎样的次序才能将4个作业同时全部装入主存?
写出所有可能的装入次序。
(3)从上述作业装入次序中选择一种,描述作业装入后内存的情况。
答:
最先适应分配算法在主存分配时按照内存地址递增的次序进行分配,找到第一个满足作业长度要求的空闲区即可。
J2,15K要占用16KB的分区,J1,8K要占用10KB的分区,而J3,J4要占用150KB的分区,故装入次序为J2、J3、J4、J1或J2、J4、J3、J1或J3、J4、J2、J1或J4、J3、J2、J1。
以装入次序J2、J3、J4、J1为例说明:
先装入J2分割5KB-21KB空闲区,再依次装入J3,J4分割30KB-180KB空闲区,最后装入J1分割190KB-200KB空闲区,内存情况如下图所示
系统区
J2(1分)
空闲区
JA
J3(1分)
J4(1分)
JB
J1(1分)
空闲区
2.
假定某采用分页式存储管理的系统中,主存容量为1M,被分成256块,块号为0,1,2,……,255。
某作业的地址空间占4页,其页号为0,1,2,3,被分配到主存的第2,4,1,5块中。
回答:
(1)主存地址应该用多少位来表示?
(2)作业每一页的长度是多少?
(3)逻辑地址中的页内偏移应用多少位来表示?
(4)写出作业中的每一页在主存块中的起始地址。
答:
(1)由于主存容量为1M,而1M等于2的20次方,因而主存地址应用20位来表示(2分)。
(2)1M的主存空间被分成256块,因而每一块的长度为2的20次方/2的8次方=2的12次方=4096(字节)(2分)。
(3)在页式存储管理的系统中,作业信息分页的大小应该与主存分块的大小一致,故作业每一页的长度应为4096个字节(2分)。
于是,逻辑地址中的页内地址部分应占12位。
(2分)
(4)因为主存块的大小为4096个字节(4K字节),块的编号从0开始,主存的绝对地址也是从0开始的,故每个主存块的起始地址为:
块长*块号=4K*块号
现作业被分成四页(页号为0,1,2,3)且分别装入到第2,4,1,5块中。
那么,这四页信息所在主存块起始地址应依次为:
8K,16K,4K,20K。
(2分)
3.
已知页面走向为1、2、1、3、1、2、4、2、1、3、4,且开始执行时主存中没有页面。
(1)若只给该作业分配2个物理块,当采用FIFO页面淘汰算法时缺页率为多少?
(2)假设现有一种淘汰算法,该算法淘汰页面的策略为当需要淘汰页面时,就把刚使用过的页面作为淘汰对象,试问就相同的页面走向,其缺页率为多少?
答:
(1)采用FIFO时,共统计出缺页9次
统计过程
页面走向
1
2
1
3
1
2
4
2
1
3
4
物理块1
1
1
1
3
3
2
2
2
1
1
4
物理块2
2
2
2
1
1
4
4
4
3
3
缺页
缺
缺
缺
缺
缺
缺
缺
缺
缺
缺页率是9/11
(2)采用第二种淘汰算法时,共统计出缺页8次
统计过程
页面走向
1
2
1
3
1
2
4
2
1
3
4
物理块1
1
1
1
3
1
1
1
1
1
3
4
物理块2
2
2
2
2
2
4
2
2
2
2
缺页
缺
缺
缺
缺
缺
缺
缺
缺
缺页率是8/11
4.
在页式存储管理中,假设作业的地址为16位,页长为4KB,作业的第0,1,2逻辑页分别放在内存的第5,10,11物理块中,试计算作业中逻辑地址2F6AH,0E3CH,526CH相对应的内存物理地址,说明转换过程、写出转换结果。
答:
根据题意,得出此作业放入内存的页表为
页号
块号
0
5
1
10
2
11
地处转换过程是通过页表进行的,具体方式是将逻辑地址中的页号部分取出,然后查页表得到此页在内存中的块号,再将得到的块号和逻辑地址中的页内偏移合并就得到物理地址。
作业地址16位,页长4KB,说明页内偏移有12位,页号有4位。
逻辑地址
物理地址
2F6AH
BF6AH
0E3CH
5E3CH
526CH
非法地址
5.
某系统采用页式虚拟存储管理,贮存每块为128个字节,现在要把一个128×128的二维数组置初值为“0”。
在分页时把数组中的元素每一行放在一页中,假定系统只分给用户一页数据区。
(1)对如下数据段,执行完要产生多少次缺页中断?
varA:
array[1..128]ofarray[l..128]ofinteger;
forj:
=1to128
dofori:
=1to128
doA[i,j]:
=0;
(2)为减少缺页中断的次数,请改写上面的程序,使之仍能完成所要求的功能。
答:
(1)数组中有128×128个整数,共需存储空间128×128个字节;而每块为128字节,每页当然也是128字节,则数组占用空间128页。
数组元素的访问顺序为:
A[1][1],A[2][1],…,A[128][1]
A[1][2],A[2][2],…,A[128][2]
……
A[1][128],A[2][128],…,A[128][128]
程序对数组的访问顺序与存储顺序不一致,故总共产生128×128次缺页中断。
(2)为减少缺页次数,改进的程序如下:
varA:
array[1..128]ofarray[l..128」ofinteger;
fori:
=1to128
doforj:
=1to128
doA[i,j]:
=0;
数组中有128×128个整数,共需存储空间128×128个字节;而每块为128字节,每页当然也是128字节,则数组占用空间128页。
假设数组从作业地址空间的第m页开始存放,则数组分布在第m页到第m+127页中,它的排列顺序为:
A[1][1],A[1][2],…,A[1][128]第m页
A[2][1],A[2][2],…,A[2][128]第m+1页
……
A[128][1],A[128][2],…,A[128][128]第m页
由于数组初始化程序是按行进行的,因此每次缺页中断调进一页后,位于该页内的数组元素全部赋予0值,然后再调入下一页,所以涉及的页面走向为m,m+1,…,m+127,故总共产生128次缺页中断。
6.
叙述固定分区存储管理的基本原理。
要求:
(1)重定位是如何实现的?
(2)存储保护是如何实现的?
(3)能否实现虚拟存储?
(4)讨论固定分区存储管理的优缺点。
答:
(1)固定分区可以采用静态重定位的方法,从固定分区说明表中可以取得各个分区的起始地址,利用分区的起始地址就能完成重定位,物理地址=逻辑地址+起始地址。
(2)在固定分区存储管理方式中,为实现存储保护,处理器设置了一对寄存器,“下限寄存器”“上限寄存器”,某作业调度执行时,将该作业所在分区的下限和上限分别装入相应寄存器,处理器执行时,要求:
下限地址<=绝对地址<上限地址。
(3)一般情况下,固定分区方式不能实现虚拟存储的功能。
(4)固定分区方式的优点是简单易行时间效率高,缺点是存储空间利用率不高。
7.
叙述可变分区存储管理的基本原理。
要求:
(1)重定位是如何实现的?
(2)存储保护是如何实现的?
(3)能否实现虚拟存储?
(4)讨论可变分区存储管理的优缺点。
答:
(1)一般使用动态重定位方式装入作业。
由硬件的地址转换机构作支持,主要设置专用的控制寄存器:
基址寄存器和限长寄存器。
基址寄存器保存作业所占分区的起始地址,作业所占分区的最大地址保存在限长寄存器中。
作业执行时,处理器每执行一条指令都要由硬件地址转换机构把逻辑地址转换成绝对地址。
指令中的逻辑地址与基址寄存器的内容相加即得到绝对地址。
(2)当下列不等式不成立时:
基址寄存器内容≤绝对地址≤限长寄存器内容,说明绝对地址已超出了所分到的区域。
这时不允许访问,达到存储保护的目的。
(3)不可以实现虚拟存储,因为可变分区每次必须将作业完整调入并连续存放,这不适合虚拟存储的要求。
同时,可变分区的硬件地址转换机构把绝对地址超出限定范围时作地址错处理,而不是产生“缺分区中断”。
(4)优缺点:
支持多道程序设计,可利用移动技术满足正在执行的作业主存扩充的要求;有外部碎片,且作业完整调入并连续存放,主存利用率不高。