第四章存储管理习题
一、单项选择题
1.要保证一个程序在主存中被改变了存放位置后仍能正确执行,则对主存空间应采用()技术。
A.动态重定位B.静态重定位
C.动态分配D.静态分配
2.固定分区存储管理把主存储器划分成若干个连续区,每个连续区称一个分区。
经划分后分区的个数是固定的,各个分区的大小()。
A.是一致的
B.都不相同
C.可以相同,也可以不相同,但根据作业长度固定
D.在划分时确定且长度保持不变
3.采用固定分区方式管理主存储器的最大缺点是()。
A.不利于存储保护B.主存空间利用率不高
C.要有硬件的地址转换机构D.分配算法复杂
4.采用可变分区方式管理主存储器时,若采用最优适应分配算法,宜将空闲区按()次序登记在空闲区表中。
A.地址递增B.地址递减C.长度递增D.长度递减
5.在可变分区存储管理中,某作业完成后要收回其主存空间,该空间可能要与相邻空闲区合并。
在修改未分配区表时,使空闲区个数不变且空闲区始址不变的情况是()空闲区。
A.无上邻也无下邻B.无上邻但有下邻
C.有上邻也有下邻D.有上邻但无下邻
6.在可变分区存储管理中,采用移动技术可以()。
A.汇集主存中的空闲区B.增加主存容量
C.缩短访问周期D.加速地址转换
7.页式存储管理中的页表是由()建立的。
A.操作员B.系统程序员C.用户D.操作系统
8.采用页式存储管理时,重定位的工作是由()完成的。
A.操作系统B.用户C.地址转换机构D.主存空间分配程序
9.采用段式存储管理时,一个程序如何分段是在()决定的。
A.分配主存时B.用户编程时C.装人作业时D.程序执行时
10.采用段式存储管理时,一个程序可以被分成若干段,每一段的最大长度是由()限定的。
A.主存空闲区的长度B.硬件的地址结构C.用户编程时D.分配主存空间时
11.实现虚拟存储器的目的是()。
A.扩充主存容量B.扩充辅存容量C.实现存储保护D.加快存取速度12.LRU页面调度算法是选择()的页面先调出。
A.最近才使用B.最久未被使用C.驻留时间最长D.驻留时间最短13.若进程执行到某条指令时发生了缺页中断,经操作系统处理后,当该进程再次占用处理器时,应从()指令继续执行。
A.被中断的前一条B.被中断的后一条C.被中断的D.开始时的第一条14.下面的存储管理方案中,()方式可以采用静态重定位。
A.固定分区B.可变分区 C.页式D.段式
二、多项选择题
1.采用()管理方式时应使作业使用的逻辑地址空间和占用的绝对地址空间都是连续的。
A.固定分区
B.可变分区
C.页式
D.段式
E.段页式
2.可实现虚拟存储器的存储管理方式有()。
A.固定分区
B.可变分区
C.页式
D.段式
E.段页式
3.页式存储管理与段式存储管理的共同点是()。
A.逻辑地址都是连续的
B.都采用动态重定位
C.作业信息均可分散存放在不连续的主存区域中
D.如何分页和分段都由用户确定
E.均要由地址转换机构作支撑
4.实现虚拟存储器后,可以()。
A.提高主存空间利用率
B.减少系统开销
C.允许逻辑地址空间大于主存实际容量
D. 缩短作业的执行时间
E.有利于多道程序设计
三、填空题
1.把_______地址转换成_______地址的工作称为重定位。
2.重定位的方式可以有_______和_______两种。
3.用户程序中使用的地址被称为_______地址,但处理器必须按_______访问主存储器才能保证程序的正确执行。
4.采用动态重定位时一定要有硬件的_______机构作支持。
5.采用_______重定位时不允许作业在执行过程中改变存放区域。
6.在可变分区存储管理中采用_______技术可集中分散的空闲区。
7.可变分区存储管理中常用的分配主存的算法有_______、_______和_______。
8.采用页式存储管理时,程序中的逻辑地址可分成_______和_______两部分。
9.页式存储管理中的页表是由_______建立的。
10.采用页式存储管理的系统中,若逻辑地址中的页号用8位表示,页内地址用16位表示,则用户程序的最大长度可为_______字节,主存分块大小为_______字节。
11.若段式存储管理中供用户使用的逻辑地址为24位,其中段内地址占用16位,则用户程序最多可分为_______段。
当把程序装人主存时,每段占用主存的最大连续区为_______字节。
12.段页式存储管理兼顾了段式在逻辑上_______和页式在管理上_______的优点。
13.若允许用户使用的逻辑地址空间大于主存储器的绝对地址空间,则应采用_______存储管理技术。
14.当采用分页式虚拟存储管理时,如果在作业执行过程中需访问的页面不在主存储器中,则硬件将发出一个_______中断。
15.常用的页面调度算法有_______调度算法、_______调度算法和_______调度算法。
四、问答题
1.对采用动态重定位方式装人主存的作业,在任何时刻都可改变它在主存中的存放位置吗?为什么?
2.简述固定分区存储管理和可变分区存储管理的区别。
3.固定分区存储管理的主要缺点是什么?可采用哪些方法来改进?
4.用可变分区方式管理主存时,假定主存中按地址顺序依次有五个空闲区,空闲区的大小依次为32K,10K,SK,228K,100K。
现有五个作业 J1,J2,J3, J4和J5,它们各需主存量为 1K,10K,108K,28K和115K。
若采用最先适应分配算法,能把这五个作业按J1~J5的次序全部装人主存吗?按怎样的次序装人这五个作业可使主存空间利用率最高?
5.与可变分区存储管理相比,采用页式存储管理时处理器在单位时间里执行指令的数量是增加还是减少?为什么?
6.假定某采用页式存储管理的系统中,主存容量为1M,被分成256块,块号为0,1,2,……255。
现有一个共4页(页号为0,1,2,3)的作业被依次装人到主存的第2,4,1,5块中。
请回答:
(1)主存地址应该用多少位来表示?
(2)作业每一页的长度为多少字节?逻辑地址中的页内地址部分应占用多少位?
(3)把作业中每一页占用的主存块起始地址填人下表。
(4)若作业执行中要从第0页的第75单元和第3页的第548单元读信息,那么,实际应从主存的哪两个单元读信息?请把应访问的主存绝对地址用二进制编码的十六进制数表示。
7.有一个程序要把 100 X100的数组置初值“0”,现假定有两个主存块可用来存放数组中的元素,每个主存块可以存放200个数组元素,数组中的元素按行编址。
两个主存块的初始状态都为空,若程序编制如下:
(1)Var A:array[1..100] of array[1..100]of integer;
for j:=1 to 100 do
for i:=1 to 100 do
A[i,j」:=0
(2)Var A:array[1..100]of array [1..100]of integer;
for i:=1 to 100 do
for j:=1 to 100 do
A[i,j」:=0
当采用LRU页面调度算法时,对上述两种程序编制方法各会产生多少次缺页中断?
8.在一个采用分页式虚拟存储管理的系统中,有一用户作业,它依次要访问的字地址序列是:115,228,120,88,446,102,321,432,260,167。
若分配给作业可使用的主存空间共300个字,作业的页面大小为100个字,且第0页已经装人主存,请回答下列问题:
(1)按FIFO页面调度算法将产生多少次缺页中断?写出依次淘汰的页号。
(2)按LRU页面调度算法将产生多少次缺页中断?写出依次淘汰的页号。
\
1 2 1 0 4 1 3 4 2 1
10 210 421 342 134 3/10=30%
10 210 410 413 423 421 4/10=0.4%
9. 某采用段式存储管理的系统为装入主存的一个作业建立了如下的段表:
请计算该作业访问[0,432],「1,010],「2,500],「3,400」时(方括号中第一个元素为段号,第二个元素为段内地址)的绝对地址。
处理器能按计算出来的绝对地址存取信息吗?。