第五章存储管理

第五章存储管理
第五章存储管理

单多项选择题

判断题

填空题

名词解释

1物理地址

内存中各存储单元的地址由统一的基地址顺序编址,这种地址称为物理地址。

2逻辑地址

用户程序经编译之后的每个目标模块都以0为基地址顺序编址,这种地址称为逻辑地址。

3逻辑地址空间

由程序中逻辑地址组成的地址范围叫做逻辑地址空间。

4物理地址空间

由内存中的一系列存储单元所限定的地址范围称作内存空间。

5重定位

把逻辑地址转变为内存物理地址的过程叫做重定位。

6静态重定位

在目标程序装入内存时所进行的重定位。

7动态重定位

在程序执行期间,每次访问内存之前进行的重定位。

8内部碎片

在一个分区内部出现的碎片(即被浪费的空间)称作内部碎片。如固定分区法会产生内部碎片。

9外部碎片

在所有分区之外新产生的碎片称作外部碎片,如在动态分区法实施过程中出现的越来越多的小空闲块,由于它们太小,无法装入一个小进程,因而被浪费掉。

10碎片

在分区法中,内存出现许多容量太小、无法被利用的小分区称作“碎片”。

11紧缩

移动某些已分区的内容,使所有作业的分区紧挨在一起,而把空闲区留在另一端,这种技术称为紧缩。

12可重定位地址

当含有它的程序被重定位时,将随之被调整的一种地址。

13固定分区法

内存中分区的个数固定不变,各个分区的大小也固定不变,但不同分区的大小可以不同,每个分区只可装入一道作业。

14动态分区法

各个分区是在相应作业要求进入内存时才建立的,使其大小恰好适应作业的大小。

15可再入代码

也称纯代码,是指那些在其执行过程本身不做任何修改的代码,通常由指令和常数组成。

16虚拟存储器

虚拟存储器是用户能作为可编程内存对待的虚拟存储空间,在这种计算机系统中实现了用户逻辑存储器与物理存储器的分离,它是操作系统给用户提供的一个比真实内存空间大得多的地址空间。

17抖动

页面抖动是系统中频繁进行页面置换的现象。即如果一个进程没有一定数量的内存块,它很快就发生缺页。此时,它必须淘汰某页。由于所有这些页面都正在使用,所以刚被淘汰出去的页很快又被访问,因而要把它重新调入。可是调入不久又再被淘汰出去,这样再访问,再调入,如此反复,使得整个系统的页面替换非常频繁,以致大部分机器时间都用在来回进行的页面调度上,只有一小部分时间用于进程的实际运算方面。

18工作集

工作集是一个进程在某一小段时间内访问页面的集合。利用工作集模型可防止抖动,也可以进行页面置换。

19程序局部性原理

在相对短的一段时间内,进程集中在一组子程序或循环中之行,导致所有的存储器访问局限于进程地址空间的一个固定子集。这种现象就叫做程序局部性原理。

20快表

又叫“联想存储器”。在分页系统中,由于页表是存放在主存中的,因此cpu存取一个数据时要访问两次主存。这样使计算机的处理速度降低约一倍。为了提高地址变换速度,在地址变换机构中增设一个具有并行查找能力的高速缓冲存储器,用以存放当前访问的页表项。这样的高速缓冲存储器就是快表。

21交换

交换系统指系统根据需要把主存中暂时不运行的某个(或某些)作业部分或全部移到外存。而把外存中的某个(或某些)作业移到相应的主存区,并使其投入运行。

22换页

指系统根据某种策略选择某页出主存,将某页调入主存的过程。

23实存

实存是指计算机配置的物理存储器,它直接向cpu提供程序和数据。

24虚存

虚存是指系统向用户程序提供的编程空间,其大小由cpu的地址长度决定。

简答题

1解释固定分区法和动态分区法的基本原理。

答:固定分区法——内存中分区的个数固定不变,各个分区的大小也固定不变,但不同分区的大小可以不同。每个分区只可装入一道作业。

动态分区法——各个分区是在相应作业要进入内存时才建立的,使其大小恰好适应作业的大小。

2说明内部碎片和外部碎片的不同之处

答:内存中出现的其容量太小、无法被利用的小分区称作碎片。内部碎片和外部碎片出现的位置不同。内部碎片出现在一个分区的内部(即被浪费的空间),如固定分区法会产生内部碎片。外部碎片出现在所有分区之外,是新增的小分区,如在动态分区法实施过程中会出现外部碎片。

3动态重定位分区管理方式中如何实现虚-实地址映射?

答:作业装入内存时,是将该用户的程序和数据原封不动地装入到内存中。当调度该进程在cpu上执行时,操作系统就自动将该进程在内存的起始地址装入基址寄存器,将进程的大小装入限长寄存器。当执行指令时,如果地址合法,则将相对地址与基址寄存器中的地址相加,所得结果就是真正要访问的内存地址;如果地址越界,则发出相应中断,进行处理。

4什么是虚拟存储器?它有哪些基本特征?

答:虚拟存储器是用户能作为可编址内存对待的虚拟存储空间,在这种计算机系统中实现了用户逻辑存储器与物理存储器的分离,它是操作系统给用户提供的一个比真实内存空间大得多的地址空间。

虚拟存储器的基本特征是:虚拟扩充——不是物理上,而是逻辑上扩充了内存容量;部分装入——每个作业不是全部一次性地装入内存,而是只装入一部分;离散分配——不必占用连续的内存空间,而是”见缝插针”;多次对换——所需的全部程序和数据要分成多次调入内存。

5引入虚拟存储器后,除了获得主存“扩充”的好处,还有什么好处?

答:引入虚存后,程序的地址空间都是虚地址的集合,只有在程序运行中通过硬件地址转换机构和操作系统的相应软件,才能将虚地址变换成主存的实地址,这将为主存的分配带来更大的灵活性。另外,虚、实地址分开,用户程序不能干扰实地址的生成,从而实现了存储器的保护。

6什么是分页?什么是分段?二者有何主要区别?

答:分页是由系统将一个进程的逻辑地址空间划分成若干大小相等的部分,每一部分称做一个页面。

分段是用户根据作业的逻辑关系进行自然划分,每个分段是作业中相对独立的一部分。

分段和分页都是非连续的存储管理方法,

分页和分段的主要区别有:

①页是信息的物理单位,段是信息的逻辑单位。

②页面的大小由系统确定,并且各页大小都相同;各段长度因段而已,由用户决定。

③分页的作业地址空间是一维的,分段的作业的地址空间是二维的。

④分页的活动对用户是不可见的,而分段是用户可见的活动。

7在分页系统中页面大小由谁决定?页表的作用是什么?如何将逻辑地址转换成物理地

址?

答:在分页系统中页面大小由硬件决定。

页表的作用是:实现从页号到物理块号的地址映射。

逻辑地址转换成物理地址的过程是:用页号P去检索页表,从页表中得到该页的物理块号,把它装入物理地址寄存器中。同时,将页内地址d直接送入物理地址寄存器的块内地址字段中。这样,物理地址寄存器中的内容就是由二者拼接成的实际访问内存地址,从而完成了从逻辑地址到物理地址的转换。

8什么是belady现象?

答:belady现象是指在使用FIFO算法进行内存页面置换时,在未给进程或作业分配足它所要求的全部页面的情况下,有时出现的分配的页面数增多,缺页次数发而增加的奇怪现象。

9请求分页技术的基本思想是什么?它与简单分页技术之间有何根本区别?

答:请求分页技术的基本思想是:当一个进程的部分页面在内存时就可调度它运行;在运行过程中若用到的页面尚未在内存,则把它们动态换入内存。这样,就减少了对换时间和所需内存数量,允许增加程序的道数。

请求分页技术是在简单分页技术基础上发展起来的,两者根本区别是:请求分页提供虚拟存储器,而简单分页系统并未提供虚拟存储器。

10为什么分段技术比分页技术更容易实现程序或数据的共享和保护?

答:每一段在逻辑上是相对完整的一组信息,分段技术中的共享是在段一级出现的。这样,任何共享的信息就可以单独成为一段。同样,段中所有内容可以用相同的方式进行使用,从而规定相同的保护权限。然而,页是信息的物理单位,在一页中可能存在逻辑上互相独立的两组或多组信息,各有不同的使用方式和存取权限,因而,对分页难以进行共享和保护。

11何谓工作集?它有什么作用?

答:工作集是一个进程在某一小段时间内访问页面的集合。

利用工作集模型可防止抖动,也可以进行页面置换。

12什么是页面抖动?系统怎样检测是否出现抖动?一旦检测到抖动?系统如何消除它?答:页面抖动是系统频繁进行页面置换的现象。整个系统的页面替换非常频繁,以致大部分机器时间都用在来回进行的页面调度上,只有一小部分时间用于进程的实际运算方面。

操作系统监督每个进程的工作集,并给它分配工作集所需的内存块。若有足够多的额外块,就可以装入并启动另外的进程。如果工作集增大了,超出可用块的总数,即系统中全部进程对内存块的总请求量大于可用内存块的总量,将出现抖动,因为某些进程得不到足够的内存块。

一旦检测到抖动,操作系统要选择一个进程让它挂起,把它的页面写出去,把它占用的内存块分给别的进程。被挂起的进程将在以后适当时机重新开始执行。

综合题

1考虑下面页面走向:1,2,3,4,2,1,5,6,2,1,2,3,7,6,3,2,1,2,3,6 当内存块数量分别为3时,试问LRU,FIFO,OPT三种置换算法的缺页次数各是多少?(注意,所有内存最初都是空的,凡第1次用到的页面都产生一次缺页)

答:

LRU

1 2 3 4 2 1 5 6 2 1 2 3 7 6 3 2 1 2 3 6

1 1 1 4 4 4 5 5 5 1 1 1 7 7 7

2 2 2 2 2

2 2 2 2 1 1 1 2 2 2 2 2 6 6 6 1 1 1 6

3 3 3 3 3 6 6 6 6 3 3 3 3 3 3 3 3 3

×××××××××××××××(2’)

FIFO

1 2 3 4 2 1 5 6 2 1 2 3 7 6 3 2 1 2 3 6

1 1 1 4 4 4 4 6 6 6 6 3 3 3 3

2 2 2 2 6

2 2 2 2 1 1 1 2 2 2 2 7 7 7 7 1 1 1 1

3 3 3 3 5 5 5 1 1 1 1 6 6 6 6 6 3 3

××××××××××××××××(2’)

OPT

1 2 3 4 2 1 5 6 2 1 2 3 7 6 3 2 1 2 3 6

1 1 1 1 1 1 1 1 1 1 1 3 3 3 3 3 3 3 3 3

2 2 2 2 2 2 2 2 2 2 2 7 7 7 2 2 2 2 2

3 4 4 4 5 6 6 6 6 6 6 6 6 6 1 1 1 6

×××××××××××(2’)

内存块数置换算法

FIFO LRU OPT

3 16 15 11 (3’)

2考虑下面存储访问序列,该程序大小为460字:10,11,104,170,73,309,185,245,246,434,458,364 设页面大小是100字,请给出该访问序列的页面走向。又设该程序基本可用内存是200字,采用FIFO置换算法,求出缺页率。如果采用LRU算法,缺页率是多少?如果采用最优淘汰算法,其缺页率又是多少?

解:

该序列的页面走向为:0、1、0、3、1、2、4、3。(1’)

FIFO

0 1 0 3 1 2 4 3

0 0 0 3 3 3 4 2

1 1 1 1

2 2 3

××××××(2’)

LRU

0 1 0 3 1 2 4 3

0 0 0 0 1 1 4 4

1 1 3 3

2 2 3

×××××××(2’)

OPT

0 1 0 3 1 2 4 3

0 0 0 3 3 3 3 3

1 1 1 1

2 4 4

×××××(2’)

算法FIFO LRU OPT

缺页次数 6 7 5

缺页率6/12=0.5 7/12=0.583 5/12=0.417 (3’)

3设某页系统中,页帧大小为100字。一个程序大小为1200字,可能的访问序列如下:10,205,110,735,603,50,815,314,432,320,225,80,130,270

系统采用LRU算法。当为其分配4个主存块时,给出该作业驻留的各个页的变化情况及页故障数。

答:

首先将逻辑地址变换成页号。这样10,205,110,735,603,50,815,314,432,320,225,80,130,720,通过除以页的大小100,页号分别为0,2,1,7,6,0,8,3,4,2,0,1,2。(3’)

系统为运行进程分配4个主存块,采用LRU算法,因此可以列表给出进程的缺页情况:

0 2 1 7 6 0 8 3 4 3 2 0 1 2

0 2 1 7 6 0 8 3 4 3 2 0 1 2

0 2 1 7 6 0 8 3 4 3 2 0 1

0 2 1 7 6 0 8 8 4 3 2 0

0 2 1 7 6 0 0 8 4 3 3

F F F F F F F F F S F F F S (5’)

由上表可见,被淘汰的页依次为0,2,1,7,6,0,8,4。缺页次数为12次(2’)

4某请求页式管理系统,用户编程空间有40个页面,每个页面为200H字节。假定某时刻用户页表中虚页号和物理块号对照表如下:

虚页号0 2 5 17 20

物理块号 5 20 8 14 36

求虚地址0A3CH、223CH分别对应的物理地址。

答:

虚地址0A3CH转换成十进制数为2620,每个页为200H,即512B,由2620/512可得,页号为5,页内地址为60。查页表可知,其主存块号为8。(3’)

因此地址为2620的物理地址为:8*512+60=4156。(2’)

虚地址223CH转换成十进制数为8762,由8762/512可得,其页号为17,页内地址为58。查页表可知,其主存块号为14。(3’)

因此地址为8762的物理地址为14*512+58=7226。(2’)

5某系统采用页式存储管理策略,拥有逻辑空间32页,每页2KB;拥有物理空间1MB。1)写出逻辑地址的格式

2)若不考虑访问权限位,进程的页表有多少项?每项至少多少位?

3)如果物理空间减少一半,页表结构应作怎样的改?

答:

1)逻辑空间32页,占5个二进制位。每页2KB,占11位。故描述逻辑空间需要16位(2’)。

15 ...11 10 0

逻辑地址的格式:[ | ] (1’)

2)进程的页表有32项,每项的位数由主存的分块数决定(2’)。1MB的空间可划分为512个2KB的块,每个块用9个二进制位表示(2’)。

3)如果物理空间减少一半时,主存地址需要19位表示,仍大于逻辑空间的大小,故页表结构可以不变。(3’)

6有一虚拟存储系统,采用先进先出(FIFO)的页面淘汰算法。在主存忠为每一个作业进程开辟3页。某作业运行中使用的操作数所在的页号依次为:4,3,2,1,4,3,5,4,3,2,1,5。

1)该作业运行中总共出现多少次缺页?

2)若每个作业进程在主存拥有4页,又将产生多少次缺页?

3)如何解释所出现的现象?

解:

先进先出算法的实质是:总是选择作业中在主存驻留时间最长的一页进行淘汰。

若在主存中为每一作业进程开辟3页,对于题中的页面访问过程,其页面调度过程如下所示

4 3 2 1 4 3

5 4 3 2 1 5

页面1 4 4 4 1 1 1 5 5 5 5 5 5

页面2 3 3 3 4 4 4 4 4 2 2 2

页面3 2 2 2 3 3 3 3 3 1 1

缺页中断 F F F F F F F F F (3’)

1)该作业运行中总共出现9次缺页(1’)

2)在主存拥有4页,又将产生10次缺页(1’)。其页面调度过程见下图:

4 3 2 1 4 3

5 4 3 2 1 5

页面1 4 4 4 4 4 4 5 5 5 5 1 1

页面2 3 3 3 3 3 3 4 4 4 4 5

页面3 2 2 2 2 2 2 3 3 3 3

页面4 1 1 1 1 1 1 2 2 2

缺页中断 F F F F F F F F F F (3’)

3)从这个例子可以看出,当主存中为每一作业进程开辟4页时,出现了缺页次数反而增加的现象。这种现象称为Belady现象。(2’)

7关于存储管理,试问:

(1)在分页、分段和段页式存储管理中,当访问一条指令或数据时,需要访问内存几次?

各做什么处理?

(2)假设一个分页存储系统具有快表,多数活动页表都可以存在其中,页表放在内存中,内存访问时间是1us。若快表的命中率是85%,快表的访问时间为0.1us,则有效存取时间为多少?若快表命中率为50%,那么有效存取时间为多少?

解答:(1)分页需要访问2次,第一次访问页表,第二次执行访内操作(2’);分段需要访问2次,第一次访问段表,第二次执行访内操作;段页式需要访问3次,第一次访问段表,第二次访问页表,第三次执行访内操作(2’)。

(2)当快表的命中率为85%时,执行一次访内操作需要的时间:

T=1*0.85+2*(1-0.85)=1.15(us) (3’)

当快表的命中率为50%时,执行一次访内操作需要的时间:

T=1*0.5+2*(1-0.5)=1.5(us) (3’)

8在一个采用页式虚拟存储管理的系统中,有一用户作业,它依次要访问的字地址序列是:115,228,120,88,446,102,321,432,260,167,若该作业的第0页已经装入主存,现分配给该作业的主存共300字,页的大小为100字,请回答下列问题:

(1)按FIFO调度算法将产生多少次缺页中断,依次淘汰的页号为多少,缺页中断率为多少。

(2)按LRU调度算法将产生多少次缺页中断,依次淘汰的页号为多少,缺页中断率为多少。答:

页面走向为:1,2,1,0,4,1,3,4,2,1

(1)按FIFO调度算法将产生5次缺页中断;依次淘汰的页号为:0,1,2;缺页中断率为:5/10=50% (3’)

1 2 1 0 4 1 3 4 2 1

0 0 0 0 0 4 4 4 4 4 4

1 1 1 1 1 1 3 3 3 3

2 2 2 2 2 2 2 2 1

×××××(2’)

(2)按LRU调度算法将产生6次缺页中断;依次淘汰的页号为:2,0,1,3;缺页中断率为:6/10=60% (3’)

1 2 1 0 4 1 3 4 2 1

0 0 0 0 0 0 0 3 3 3 3

1 1 1 1 1 1 1 1

2 2

2 2 2 4 4 4 4 4 1

××××××(2’)

9一台计算机含有65536字节的存储空间,这一空间被分成许多长度为4096字节的页。有一个程序,其代码段为32768字节,数据段为16386字节,栈段为15870字节。试问该机器的主存空间适合这个进程吗?如果将每页改成512字节,合适吗?

答:

当存储空间每块为4096B时,共可分成16块。其中:

程序代码段占:32768/4096=8块;(1’)

数据段占:16386/4096=5块;(1’)

栈段占:15870/4096=4块;(1’)

合计为:8+5+4=17块;(1’)

故该机器的主存空间不适合这个作业。(1’)

当存储空间每块为512B时,共可分成128块。其中:

程序代码段占:32768/512=64块;(1’)

数据段占:16386/512=32块;(1’)

栈段占:15870/512=31块;(1’)

故合计为:64+32+31=127块。(1’)

故该机器的主存空间是适合这个作业的。(1’)

10一个请求分页系统中,内存的读/写周期为8纳秒,当配置有快表时,查快表需要1纳秒,内外存之间传送一个页面的平均时间为5000纳秒。假定快表的命中率为75%,页面失效率为10%,求内存的有效存取时间。

答:

访问主存的时间可用下面公式表示:

访问主存时间=主存的命中率*(快表的命中率*访问快表的时间+执行实际操作访问主存的时间)+页面失效率*页面失效时的访问时间(6’)

因此T A=(1-0.1)*[0.75*1+(1-0.75)*(8+1)+8]+0.1*5000 (4’)

11在一个虚拟存储器系统中,一次访问主存的时间用T A1表示,一个访问外存的时间用T A2表示。假定T A1=10^-7秒,T A2=10^-2秒。试问,为了使访问效率达到80%以上,命中率H 至少应该达到多少?

答:

访问效率:e=T A1/T A=0.8 (2’)

T A=T A1/0.8=1.25*10^-7 s ( 2’)

T A=H*T A1+(1-H)*T A2=H(T A1-T A2)+T A2

H=(T A-T A2)/(T A1-T A2) (2’)

解得H=(1.25*10^-7-10^-2)/(10^-7 – 10^-2)=0.999975 (2’)

因此,为了使访问效率达到80%以上,命中率H至少应该达到0.999975。(2’)

分存储器管理

实验7分页存储器管理 实验性质:验证+设计 建议学时:2学时 一、实验目的 学习i386处理器的二级页表硬件机制,理解分页存储器管理原理。 查看EOS应用程序进程和系统进程的二级页表映射信息,理解页目录和页表的管理方式。 编程修改页目录和页表的映射关系,理解分页地址变换原理。 二、预备知识 阅读本书第6章。了解i386处理器的二级页表硬件机制,EOS操作系统的分页存储器管理方式,以及进程地址空间的内存分布。 三、实验内容 准备实验 按照下面的步骤准备本次实验: 1. 启动OS Lab。 2. 新建一个EOS应用程序项目。 查看EOS应用程序进程的页目录和页表 使用OS Lab打开本实验文件夹中的和文件(将文件拖动到OS Lab窗口中释放即可打开)。仔细阅读这两个文件中的源代码和注释,main函数的流程图可以参见图16-1。 按照下面的步骤查看EOS应用程序进程的页目录和页表: 1. 使用文件中的源代码替换之前创建的EOS应用程序项目中文件中的 源代码。

2. 右键点击“项目管理器”窗口中的“源文件”文件夹节点,在弹出 的快捷菜单中选择“添加”中的“添加新文件”。 3. 在弹出的“添加新文件”对话框中选择“asm 源文件”模板。 4. 在“名称”中输入文件名称“func”。 5. 点击“添加”按钮添加并自动打开文件。 6. 将文件中的源代码复制到文件中。 7. 按F7生成修改后的EOS应用程序项目。 8. 按F5启动调试。 9. 应用程序执行的过程中,会将该进程的二级页表映射信息输出到虚 拟机窗口和OS Lab“输出”窗口中,输出内容如图16-2(a)。 10. 将“输出”窗口中的内容复制到一个文本文件中。 图16-2:(a)EOS应用程序进程的二级页表映射信息(b)有应用程序进程时,系统进程的二级页表映射信息图16-2(a)中第一行是CR3寄存器的值,也就是页目录所在的页框号。第一列是页目录中有效的PDE,第二列是PDE映射的页表中有效的PTE(详细的格式可以参考源代码中的注释)。注意,在标号为0x200的PDE对应的页表中,所有的1024个PTE都是有效的,所以在图中省略了一部分。 根据图16-2(a)回答下面的问题: 应用程序进程的页目录和页表一共占用了几个物理页页框号分别是多少 映射用户地址空间(低2G)的页表的页框号是多少该页表有几个有效的PTE,或者说有几个物理页用来装载应用程序的代码、数据和堆栈页框号分别是多少 查看应用程序进程和系统进程并发时的页目录和页表 需要对EOS应用程序进行一些修改: 1. 结束之前的调试。 2. 取消第121行语句的注释(该行语句会等待10秒)。

第4章存储器管理练习答案

第四章存储器管理 一、单项选择题 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.2GB B.4GB C.100KB D.640KB 9、虚拟存储技术是( A)。 A.补充内存物理空间的技术 B.补充相对地址空间的技术 C.扩充外存空间的技术 D.扩充输入输出缓冲区的技术 10、虚拟内存的容量只受( D)的限制。 A.物理内存的大小 B.磁盘空间的大小 C.数据存放的实际地址 D.计算机地址字长 11、虚拟存储技术与(A )不能配合使用。 A.分区管理 B.动态分页管理 C.段式管理 D.段页式管理

操作系统第五章存储管理测试题

存储管理测试题 一、单项选择题,在四个备选答案中选一个合适的答案 1.属于内存连续分配方式的是(A )。 A.固定分区分配方式B.分段存储管理方式 C.分页存储管理方式D.段页式存储管理方式 2.为进程分配连续内存的是(C )。 A.分页存储管理B.分段存储管理 C.可变分区管理D.段页式存储管理 3.可变分区管理中的(B )算法,空闲区按其大小递增次序组成链。 A.首次适应B.最佳适应C.下次首次适应D.最坏适应 4.关于分段存储管理说法错误的是(C )。 A.便于编程B.便于分段共享C.便于内存分配D.能动态链接 5.在下面的页面置换算法中,(D)是实际上难以实现的 A.先进先出置换算法B.最近最久未使用置换算法 C.clock 置换算法D.最佳置换算法 6.以下不是存储管理处理的功能有(D)。 A.为每个程序安排内存空间B.保护运行程序不受干扰 C.将运行中程序的地址转换成物理地址D.决定哪个进程的程序和数据切换到内存中 二、填空题 1.在分区存储管理中,存储保护有两种方法:界限寄存器法和__存储保护键法_________。2.在分页存储管理方式中,地址结构有页号P和位移量W组成,地址转换时页号P与页表长度L进行比较,如果___ P≥L ________,则产生越界中断。 3.分区存储管理中存在内零头的是___固定分区________分配方式。 4.请求分页存储管理方式中,调入页面的时机可采用两种策略,预先调页和___请求式调页________。 5.动态地址重定位是在___程序的执行________过程中完成地址变换的。 6.一个用户程序中含有代码段A、代码段B和数据段,当该程序在段页式管理机构中运行时,系统至少为该用户程序建立________1___个段表。 三、判断改错题 判断下列各题正误,正者打“√”,误者打“×”,并将具体修改内容写在该题的下面,但有下划线部分不能改。 1.页面最佳置换算法是一种性能最好,且容易实现的算法。 [答案]:×,将“且容易实现”改成“但实际上不能实现”。 2.采用静态重定位方式装入内存的程序可以在内存中被移动。 [答案]:×,将“可以”改成“不可以”。 3.可变式分区分配方式为某作业分配内存时,分配给的区域大小往往大于该作业的大小。[答案]:×,将“往往大于”改成“等于”。 4.请求分页系统中的页表表项中修改位,表示该页调入内存后是否允许修改。 [答案]:×,将“允许修改”改成“已经修改”。 四、简答题 1.什么是动态重定位?它有什么好处? [答案]:动态重定位是指在程序执行过程中进行的地址重定位,即可使装配模块不加任何修

第4章-存储器管理练习答案

第4章-存储器管理练习答案

第四章存储器管理 一、单项选择题 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.2GB B.4GB C.100KB D.640KB 9、虚拟存储技术是( A)。 A.补充内存物理空间的技术 B.补充相对地址空间的技术

第五章虚拟存储器附答案

第五章虚拟存储器 一、单项选择, 1.虚拟存储器的最大容量______ 。 *A.为内外存容疑之和 B.由计算机的地址结构决定(((实际容量 C.是任意的 D.由作业的地址空间决定 虚拟存储器是利用程序的局部性原理,一个作业在运行之前,没有必要全部装入内存,而只将 当前要运行那部分页面或段装入便可以运行,英他部分放在外部存储器内,需要时再从外存调 入内存中运行,首先它的容虽必然受到外存容量的限制,其次寻址空间要受到计算机地址总线 宽度限制。最大容量(逻借容量)收内外存容捲之和决左,实际容虽受地址结构决泄。 2.在虚拟存储系统中,若进程在内存中占3块(开始时为空),采用先进先岀页而淘汰算法, 当执行访问页号序列为1、2、3、4. 1. 2. 5. 1, 2, 3、4. 5. 6时,将产生__________________ 次缺 页中断。(开始为空,内存中无页而,3块物理块一开始会发生三次缺页。) A. 7 B. 8 C. 9 D. 10 3.实现虚拟存储器的目的是______ . A.实现存储保护 B.实现程序浮动 C.扩充辅存容量 D.扩充主存容量 4.______________________________________________________ 作业在执行中发生了缺页中断,经操作系统处理后,应让其执行_________________________ 指令.(书本158页, (2)最后一句话) A.被中断的前一条 B.被中断的 C.被中断的后一条 D.启动时的第一条 5.在请求分页存储管理中,若采用FIFO页而淘汰算法,则当分配的页面数增加时,缺页中 断的次数 _______ c(在最后一题做完后再作答)?F黎祸汉选抒:D A.减少 B.增加 C.无影响 D.可能增加也可能减少 6.虚拟存储管理系统的基础是程序的_________ 理论. A.局部性 B.全局性 C.动态性 D.虚拟性 7.下述______ 页而淘汰算法会产生Belady现象. A.先进先出* B.最近最少使用 C.最近不经常使用 D.最佳 所谓Belady现彖是指:在分页式虚拟存储器管理中,发生缺页时的置换算法采用FIFO (先 进先岀)算法时,如果对一个进程未分配它所要求的全部页而,有时就会出现分配的页而数增 多但缺页率反而提高的异常现象。 二.填空题 1.假设某程序的页面访问序列为1. 2. 3. 4. 5. 2. 3. 1. 2. 3.4. 5. 1. 2. 3.4且开始执行时主存中 没有页而,则在分配给该程序的物理块数是3且采用FIFO方式时缺页次数是—13—;在

存储器管理练习及参考答案

存储器管理练习及参考答案 一、单项选择题: 1、存储管理的目的是( C )。 A.方便用户 B.提高主存空间的利用率 C.方便用户和提高主存空间的利用率 D.增加主存实际容量 2、( A )存储管理不适合多道程序设计。 A.单一连续分区 B.固定分区存储管理 C.可变分区存储管理 D.页式存储管理 3、静态重定位是在作业的(B )进行的,动态重定位是在作业的( D )进行的。 A.编译过程中 B.装入过程中 C.修改过程中 D.执行过程中 4、提高主存利用率主要是通过( A )实现的。 A.内存分配 B.内存保护 C.地址映射 D.内存扩充 5、多道程序环境中,使每道程序能在不受干扰的环境下运行,主要是通过(C )功能实现的。 A.内存分配 B.地址映射 C.内存保护 D.内存扩充 6、最佳适应分配算法的空闲区是(B )。 A.按大小递减顺序排序 B.按大小递增顺序排序 C.按地址由小到大排列 D.按地址由大到小排列 7、地址重定位的对象是(B )。 A.源程序 B.目标程序 C.编译程序 D.汇编程序 8、采用可变分区存储管理方式管理主存时,使用移动技术可以(B )。 A.加快作业执行速度 B.集中分散的空闲区 C.扩大主存容量 D.加快地址转换 9、如下存储管理方式中,(A )一般采用静态重定位方式进行逻辑地址到物理地址的转换。 A.固定分区存储管理方式 B.段式存储管理方式 C.可变分区存储管理方式 D.页式存储管理方式 10、很好地解决了内存零头问题的存储管理方法是( A )。 A.页式存储管理 B.段式存储管理 C.多重分区管理 D.可变式分区管理 11、设基址寄存器的内容为1000,在采用动态重定位的系统中,当执行指令“Load A,2000”时,操作数的实际地址是( C )。 A.1000 B.2000 C.3000 D.4000 12、对主存的研究可归纳为:主存的分配与回收、地址重定位、存储空间的共享与保护、( B )。 A.地址映射 B.虚拟存储 C.分区管理 D.物理存储器的扩充 13、地址转换或叫重定位的工作是将( C ) A.绝对地址转换为逻辑地址 B.逻辑地址转换为浮动地址 C.逻辑地址转换为绝对地址 D.绝对地址转换为浮动地址 14、段式存储管理中,用于记录作业每个分段在主存中的起始地址和长度的是(B )。 A. 基址寄存器和限长寄存器 B.段表 C. 界限寄存器 D.上、下限寄存器

储存器管理复习题.doc

Cache,主存储器,外存储器 主存储器,外存储器,Cache 外存储器,主存储器,Cache 主存储器,Cache,外存储器 第三章存储器管理 单选题 1?在计算机系统中为解决存储器在速度、容量和价格方面的矛盾,采用了多级存储装置, 在层次上组 成一个速度由快到慢,容量由小到大的多层结构。根据速度的由快到慢, 以下正确的序列是—。 A. B ? C ? D ? 2. ______________________________________ 在多道程序系统中,以下说法错误的是 _________________________________________ 。 3?可由CPU 调用执行的程序所对应的地址空间称为 _____ o 4. 程序中由符号名组成的空间称为 ____ 。 5. 程序经编译与链接后,相对地址集合而成的空间称为 ____ o 6?所谓动态重定位,地址变换是发生在__。 A. 程序装入时 B. 程序执行时 C. 程序执行前 D. 程序链接时 A _ 壬命 砧殆RR 宙如詞 EferKfr —L B ] J 口扌 IXw/TJ 口 U 坦卅〒电植存储竪苗梵种 _审户命和杓倚笛 不田知1苗确件 J ? [ ? / 『厂八J y 1 JTM 丁 >!XCT1 D 共亨程序的单—副本比较容易 & 用重定位寄存器方式进行动态重定位,如果寄存器中的地址为1000,指令中的逻辑地 址 是5()0, CPU 执行到该指令时,实际访问的物理地址是 _______ O y H 丁 八 J p A 戸坛珂住 ? I—I TAJ'q-t/ J —源程序 序 D ?执行程序

第五章虚拟存储器附答案

第五章虚拟存储器 一、单项选择题 1. 虚拟存储器的最大容量___。 *A. 为内外存容量之和 B. 由计算机的地址结构决定(((实际容量 C. 是任意的 D. 由作业的地址空间决定 虚拟存储器是利用程序的局部性原理,一个作业在运行之前,没有必要全部装入内存,而只将当前要运行那部分页面或段装入便可以运行,其他部分放在外部存储器内,需要时再从外存调入内存中运行,首先它的容量必然受到外存容量的限制,其次寻址空间要受到计算机地址总线宽度限制。最大容量(逻辑容量)收内外存容量之和决定,实际容量受地址结构决定。2.在虚拟存储系统中,若进程在内存中占3块(开始时为空),采用先进先出页面淘汰算法,当执行访问页号序列为1﹑2﹑3﹑4﹑1﹑2﹑5﹑1﹑2﹑3﹑4﹑5﹑6时,将产生___次缺页中断。(开始为空,内存中无页面,3块物理块一开始会发生三次缺页。) A. 7 B. 8 C. 9 D. 10 3. 实现虚拟存储器的目的是___. A.实现存储保护 B.实现程序浮动 C.扩充辅存容量 D.扩充主存容量 4. 作业在执行中发生了缺页中断,经操作系统处理后,应让其执行___指令.(书本158页,(2)最后一句话) A.被中断的前一条 B.被中断的 C.被中断的后一条 D.启动时的第一条 5.在请求分页存储管理中,若采用FIFO页面淘汰算法,则当分配的页面数增加时,缺页中断的次数________。(在最后一题做完后再作答)答案错误选择:D A.减少 B. 增加 C. 无影响 D. 可能增加也可能减少 6. 虚拟存储管理系统的基础是程序的________理论. A. 局部性 B. 全局性 C. 动态性 D.虚拟性

操作系统原理-第五章 存储管理习题

5.3 习题 5.3.1 选择最合适的答案 1.分页存储管理的存储保护是通过( )完成的. A.页表(页表寄存器) B.快表 C.存储键 D.索引动态重定 2.把作业地址空间中使用的逻辑地址变成内存中物理地址称为()。 A、加载 B、重定位 C、物理化 D、逻辑化 3.在可变分区存储管理中的紧凑技术可以()。 A.集中空闲区 B.增加主存容量 C.缩短访问时间 D.加速地址转换 4.在存储管理中,采用覆盖与交换技术的目的是( )。 A.减少程序占用的主存空间 B.物理上扩充主存容量 C.提高CPU效率 D.代码在主存中共享 5.存储管理方法中,( )中用户可采用覆盖技术。 A.单一连续区 B. 可变分区存储管理 C.段式存储管理 D. 段页式存储管理 6.把逻辑地址转换成物理地址称为()。 A.地址分配 B.地址映射 C.地址保护 D.地址越界 7.在内存分配的“最佳适应法”中,空闲块是按()。 A.始地址从小到大排序 B.始地址从大到小排序 C.块的大小从小到大排序 D.块的大小从大到小排序 8.下面最有可能使得高地址空间成为大的空闲区的分配算法是()。 A.首次适应法 B.最佳适应法 C.最坏适应法 D.循环首次适应法 9.那么虚拟存储器最大实际容量可能是( ) 。 A.1024K B.1024M C.10G D.10G+1M 10.用空白链记录内存空白块的主要缺点是()。 A.链指针占用了大量的空间 B.分配空间时可能需要一定的拉链时间 C.不好实现“首次适应法” D.不好实现“最佳适应法” 11.一般而言计算机中()容量(个数)最多. A.ROM B.RAM C.CPU D.虚拟存储器 12.分区管理和分页管理的主要区别是()。 A.分区管理中的块比分页管理中的页要小 B.分页管理有地址映射而分区管理没有

操作系统考研资料:第五章 存储器管理学习辅导资料

1 第五章 存储器管理 5.1 知识点汇总 1、存储器的层次 操作系统的内存管理功能,使之操作系统中负责管理内存使用的那部分功能子集,又称主存管理。 在现代计算机系统中,存储器是信息外理的来源与归宿,占据重要位置。但是,在现有 技术条件下,任何一种存储装置,都无法同时从速度与容量两方面,满足用户的需求。实际上它们组成了一个速度由快到慢,容量由小到大的存储装置层次。 图5-1 三级存储器结构 2、内存管理的目的 ? 主存的分配和管理:当用户需要内存时,系统为之分配相应的存储空间;不需要时,及 时回收,以供其它用户使用。 ? 提高主存储器的利用率:不仅能使多道程序动态地共享主存,提高主存利用率, 最好还

能共享主存中某个区域的信息。 ?“扩充”主存容量:为用户提供比主存物理空间大得多的地址空间,以至使用户感觉他 的作业是在这样一个大的存储器中运行。(虚拟内存技术) ?存储保护:确保多道程序都在各自分配到存储区域内操作,互不干扰,防止一道程序破 坏其它作业或系统文件的信息。 程序的各个阶段:编辑―――编译―――链接―――装入―――运行 1). 编辑阶段:创建源文件 2). 编译阶段:生成目标文件 3). 连接阶段:生成可执行文件 4). 装入阶段:重定位,装入内存 5). 运行阶段:得到结果 图5-2 程序的各个阶段 3、存储器管理的功能 2

存储器管理的功能:内存分配、地址映射、内存保护、内存扩充。 4、存储器有关概念 地址空间:程序用来访问信息所用地址单元的集合。逻辑(相对)地址的集合。由编译程序生成 存储空间:主存中物理单元的集合物理(绝对)地址的集合由装配程序等生成 (1)逻辑地址(相对地址,虚地址)用户的程序经过汇编或编译后形成目标代码,目标代码通常采用相对地址的形式,其首地址为0,其余指令中的地址都相对于首地址而编址。不能用逻辑地址在内存中读取信息 (2)物理地址(绝对地址,实地址):内存中各物理单元的地址是从统一的基地址顺序编址。 (3)重定位:把作业地址空间中使用的逻辑地址变换成内存空间中的物理地址的过程。又称地址映射。 1)绝对装入:编译后,装入前已产生了绝对地址(内存地址),装入时不再作地址重定位。 绝对地址的产生:(1)由编译器完成,编程时使用符号地址(2)由程序员编程完成。 程序中所使用的绝对地址,可在编译或汇编时给出,也可由程序员直接赋予。但在由程序员直接给出绝对地址时,不仅要求程序员熟悉内存的使用情况,而且一旦程序或数据被修改后,可能要改变程序中的所有地址。因此,通常是宁可在程序中采用符号地址,然后在编译或汇编时,再将这些符号地址转换为绝对地址。 3

存储管理习题

存储管理练习题 (一)单项选择题 1.存储管理的目的是(C) A.方便用户 B.提高主存空间利用率 C.方便用户和提高主存利用率 D.增加主存实际容量 2为了实现存储保护,对共享区域中的信息( B )。 A.既可读,又可写 B.只可读,不可修改 C.能执行,可修改 D.既不可读,也不可写 3.单连续存储管理时,若作业地址空间大于用户空间,可用( D) 把不同时工作的段轮流装入主存区执行。 A对换技术 B.移动技术C 虚拟存储技术 D.覆盖技术 4.把一个分区的存储管理技术用于系统时,可采用(B ) 让多个用户作业轮流进入主存储器执行。 A.存储技术

B.对换技术 C.覆盖技术D 虚拟存储技术 5.动态重定位是在作业的(D )中进行的。 A.编译过程 B.装入过程 C.修改过程D 执行过程 6.(A ) 要求存储分配时具有连续性。 A.固定分区存储管理 B.可变分区存储管理 C.段式存储管理 D.段页式存储管理 7.固定分区存储管理一般采用(D ) 进行主存空间的分配。 A.最先适应分配算法 B.最优适应分配算法 C.最坏适应分配算法 D.顺序分配算法 8.(C ) 存储管理支持多道程序设计,算法简单,但存储碎片多。

A.段式 B.页式 C.固定分区 D.段页式 9.固定分区存储管理中存储保护用( B) 关系式进行核对。 A.逻辑地址≤限长寄存器值 B.下限寄存器值≤绝对地址≤上限寄存器值 C.界限地址≤绝对地址≤主存最大地址 D.段内地址≤段表中对应段的限长 10.提高主存利用率主要是通过(A ) 实现的。 A.内存分配 B.内存保护 C.地址转换 D.内存扩充 12.可变分区存储管理时采用的地址转换公式为(C )。A.绝对地址=界限寄存器值+逻辑地址 B.绝对地址=下限寄存器值+逻辑地址 C.绝对地址=基址寄存器值+逻辑地址 D.绝对地址=块号×块长÷页内地址

操作系统存储器管理

存储器管理(固定分区、可变分区与分页式分配算法) 一、目的 本课题实验的目的是,使学生实验存储器管理系统的设计方法;加深对所学各种存储器管理方案的了解;要求采用一些常用的存储器分配算法,设计一个存储器管理模拟系统并调试运行。 二、实验内容 模拟固定分区分内存的动态分配和回收,并编程实现。 三、要求及提示 (1)建立相关的数据结构,作业控制块、已分配分区及未分配分区 (2)实现一个固定分区分配算法(实现多个分区只设置一个后备作业队列, 而每个分区设置一个后备作业队列 ,留给大家实现) (3)实现一个分区回收算法 (4)要求采用一种常用的存储器分配算法,设计一个存储器管理模拟系统。允许进行多次的分配和释放,并可向用户反馈分配和释放情况及当前内存的情况;采用“命令菜单”选择和键盘命令输入的会话方式,根据输入请求调用分配模块,或回收模块,或内存查询模块,或最终退出系统。 (5)编程实现。 (6)工具:C语言或其它高级语言 四、实验报告 1、列出调试通过程序的清单,并附上文档说明。 2、总结上机调试过程中所遇到的问题和解决方法及感想。 五参考代码: // memdos.cpp : 定义控制台应用程序的入口点。 //以下代码为4种分区,8K分区四块,16K分区3块,32分区2块, 64分区1块, 共10块 #include "stdafx.h" #include #include //#include #define TRUE 1 #define FALSE 0 void InitCSolid( ); void ExitSolid(); int MallocArea(int nSize,char* sName);//申请一个分区函数 int FreeArea(char *sName); //释放一个分区函数 void ShowArea( );//显示所有分区状态函数

习题解答——第5章存储管理

第5章思考与练习题 7.在一个分区存储管理系统中,按地址排列的内存空闲分区的大小是:10KB、4KB、20KB、18KB、7KB、9KB、12KB和15KB。对于以下的请求 a) 12KB b) 10KB c) 9KB (1)如果采用首次适应法将分配到哪些空闲分区 (2)采用最佳适应法又如何 解答: (1)首次适应法空闲链情况 10KB→4KB→20KB→18KB→7KB→9KB→12KB→15KB (a)满足12K请求,分配20KB的空闲块,分配后的链表情况 10KB→4KB→8KB→18KB→7KB→9KB→12KB→15KB (b)满足10K请求,分配10KB的空闲块,分配后的链表情况 4KB→8KB→18KB→7KB→9KB→12KB→15KB (c)满足9K请求,分配18KB的空闲块,分配后的链表情况 4KB→8KB→9KB→7KB→9KB→12KB→15KB (2)最佳适应法空闲链情况 4KB→7KB→9KB→10KB→12KB→15KB→18KB→20KB (a)满足12K请求,分配12KB的空闲块,分配后的链表情况 4KB→7KB→9KB→10KB→15KB→18KB→20KB (b)满足10K请求,分配10KB的空闲块,分配后的链表情况 4KB→7KB→9KB→15KB→18KB→20KB (c)满足9K请求,分配9KB的空闲块,分配后的链表情况 4KB→7KB→15KB→18KB→20KB

首次适应法最佳适应法(a)12K20K12K (b)10K10K10K (c)9K18K9K 8.某虚拟存储器的用户地址空间有32个页面,每页大小为1KB。内存的大小为16KB。 假设某用户的页表如下: 页号存储块号 05 110 24 37 试将虚拟地址0x0A5C和0x093C变换为物理地址。 解答: 页大小为1K,页内位移占10位。 虚拟地址0X0A5C: 0X0A5C0000 页号为2,查页表得到存储块号为4。 0000X125C 虚拟地址0X093C: 0X093C0000 页号为2,查页表得到存储块号为4。 0000X113C

第五章存储管理

单多项选择题 判断题 填空题 名词解释 1物理地址 内存中各存储单元的地址由统一的基地址顺序编址,这种地址称为物理地址。 2逻辑地址 用户程序经编译之后的每个目标模块都以0为基地址顺序编址,这种地址称为逻辑地址。 3逻辑地址空间 由程序中逻辑地址组成的地址范围叫做逻辑地址空间。 4物理地址空间 由内存中的一系列存储单元所限定的地址范围称作内存空间。 5重定位 把逻辑地址转变为内存物理地址的过程叫做重定位。 6静态重定位 在目标程序装入内存时所进行的重定位。 7动态重定位 在程序执行期间,每次访问内存之前进行的重定位。 8内部碎片 在一个分区内部出现的碎片(即被浪费的空间)称作内部碎片。如固定分区法会产生内部碎片。 9外部碎片 在所有分区之外新产生的碎片称作外部碎片,如在动态分区法实施过程中出现的越来越多的小空闲块,由于它们太小,无法装入一个小进程,因而被浪费掉。 10碎片

在分区法中,内存出现许多容量太小、无法被利用的小分区称作“碎片”。 11紧缩 移动某些已分区的内容,使所有作业的分区紧挨在一起,而把空闲区留在另一端,这种技术称为紧缩。 12可重定位地址 当含有它的程序被重定位时,将随之被调整的一种地址。 13固定分区法 内存中分区的个数固定不变,各个分区的大小也固定不变,但不同分区的大小可以不同,每个分区只可装入一道作业。 14动态分区法 各个分区是在相应作业要求进入内存时才建立的,使其大小恰好适应作业的大小。 15可再入代码 也称纯代码,是指那些在其执行过程本身不做任何修改的代码,通常由指令和常数组成。 16虚拟存储器 虚拟存储器是用户能作为可编程内存对待的虚拟存储空间,在这种计算机系统中实现了用户逻辑存储器与物理存储器的分离,它是操作系统给用户提供的一个比真实内存空间大得多的地址空间。 17抖动 页面抖动是系统中频繁进行页面置换的现象。即如果一个进程没有一定数量的内存块,它很快就发生缺页。此时,它必须淘汰某页。由于所有这些页面都正在使用,所以刚被淘汰出去的页很快又被访问,因而要把它重新调入。可是调入不久又再被淘汰出去,这样再访问,再调入,如此反复,使得整个系统的页面替换非常频繁,以致大部分机器时间都用在来回进行的页面调度上,只有一小部分时间用于进程的实际运算方面。 18工作集 工作集是一个进程在某一小段时间内访问页面的集合。利用工作集模型可防止抖动,也可以进行页面置换。 19程序局部性原理 在相对短的一段时间内,进程集中在一组子程序或循环中之行,导致所有的存储器访问局限于进程地址空间的一个固定子集。这种现象就叫做程序局部性原理。 20快表 又叫“联想存储器”。在分页系统中,由于页表是存放在主存中的,因此cpu存取一个数据时要访问两次主存。这样使计算机的处理速度降低约一倍。为了提高地址变换速度,在地址变换机构中增设一个具有并行查找能力的高速缓冲存储器,用以存放当前访问的页表项。这样的高速缓冲存储器就是快表。

第四章 存储器管理 l 存储器管理的功能

第四章存储器管理 ●存储器的层次 ●用户程序的主要处理阶段 1.编辑阶段:创建源文件 2.编译阶段:生成目标文件 3.连接阶段:生成可执行文件 4.装入阶段:重定位,装入内存 5.运行阶段:得到结果 ●存储器管理的功能 存储器管理的功能:内存分配、地址映射、内存保护、内存扩充。 ●存储器有关概念 1.逻辑地址:用户程序经编译之后的每个目标模块都以0为基地址顺序编址。 2.物理地址:内存中各物理单元的地址是从统一的基地址顺序编址。 3.重定位:把逻辑地址转变为内存的物理地址的过程。 4.静态重定位:是在目标程序装入内存时,由装入程序对目标程序中的指令和数据的地址进行修 改,即把程序的逻辑地址都改成实际的内存地址。重定位在程序装入时一次完成。

5.动态重定位:在程序执行期间,每次访问内存之间进行重定位,这种变换是靠硬件地址变换机 构实现的。 6.碎片:内存中容量太小、无法被利用的小分区。 存储管理基本技术 三种基本的存储管理技术:分区法、可重定位分区法和对换技术 1.分区法:把内存划分成若干分区,每个分区里容纳一个作业。 1)固定分区:分区的个数、分区的大小固定不变;每个分区只能放一道作业。 优点:管理方式简单。

缺点:内存空间利用率低。 2)动态分区法:分区大小和个数依作业情况而定;作业进入内存时才建分区。 优点:按需分配内存 缺点:产生大量碎片。 2.可重定位分区分配:通过紧缩可解决碎片问题;作业在内存中可以移动。 优点:解决了碎片的问题,提高了主存利用率; 缺点:增加了开销。,但须消耗大量的CPU时间。 3.对换技术:作业(或进程)在内存和磁盘之间交换,换出暂时不能运行的作业(或进程);换入具备运行条件的作业(或进程)。 ●虚拟存储器 1.虚拟存储器:是由操作系统提供的一个假想的特大存储器 2.虚拟存储器的基本特征: 1)虚拟扩充:不是物理上,而是逻辑上扩充了内存容量 2)部分装入:每个作业不是全部一次性地装入内存,而是只装入一部分 3)离散分配:不必占用连续的空间,而是“见缝插针”。 4)多次对换:所需的全部程序和数据要分成多次调入内存 3.虚拟存储器受到的限制: 1)指令中表示地址的字长 2)外存的容量 ●分页存储管理技术 1.分页的概念 1)逻辑空间等分为页; 2)物理空间等分为块,与页面大小相同; 3)逻辑地址表示:(如,页面大小为1K) 4)内存分配原则:以块为单位,逻辑上相邻的页可以分配在不相邻的内存块中。

第五章讲义存储器管理

第五章 存储器管理 存储管理是指存储器资源(主要指内存并涉及外存)的管理。 – 存储器资源的组织(如内存的组织方式) – 地址变换(逻辑地址与物理地址的对应关系维护) – 虚拟存储的调度算法 5.1 存储器的层次结构 5.1.1存储器基本知识 存储器的功能是保存数据,存储器的发展方向是高速、大容量和小体积。 – 内存在访问速度方面的发展:DRAM 、SDRAM 、SRAM 、DDR 等; – DDR :Double Data Rate 双倍速率同步动态随机存储器 。DDR1;DDR2;DDR 3 目前的 主流 4G1333Hz 主频;DDR4;未来的发展方向DDR5;DDRx – 硬盘技术在大容量方面的发展:接口标准、存储密度等; 硬盘接口标准 I DE 接口 :并口 S CSI :Small Computer System Interface”(小型计算机系统接口 )是一种广泛应用于小型机上的高速数据传输技术。SCSI 接口具有应用范围广、多任务、带宽大、CPU 占用率低,以及热插拔等优点,但较高的价格使得它很难如IDE 硬盘般普及,因此SCSI 硬盘主要应用于中、高端服务器和高档工作站中。 S ATA (Serial ATA ):串口硬盘,目前个人计算机的主流标准。 5.1.2存储层次结构 外存(secondary storage)DOS核心命令处理程序内存(primary storage)快速缓存(cache)寄存器(register) 快速缓存(高速缓存): – Data Cache – TLB(Translation Lookaside Buffer) 内存:DRAM, SDRAM 、DDR 等; 外存:软盘、硬盘、光盘、磁带等; 1 、存储组织

第四章 存储器管理

第四章存储器管理 单选题 ——存储基本概念—— 1.在计算机系统中为解决存储器在速度、容量和价格方面的矛盾,采用了多级存储装置, 在层次上组成一个速度由快到慢,容量由小到大的多层结构。根据速度的由快到慢,以下正确的序列是_____。 A.Cache,主存储器,外存储器 B.主存储器,外存储器,Cache C.外存储器,主存储器,Cache D.主存储器,Cache,外存储器 2.在多道程序系统中,以下说法错误的是_____。 A.主存空间除装入操作系统核心外,其余部分为多个用户所分享 B.当一个用户程序真正被装入时,才能根据主存的分配情况确定程序被装入的位置 C.一个程序如多次被调入主存,主存的分配状态很不可能相同 D.程序设计是以物理地址来存取数据的,而程序执行必须以逻辑地址来存取数据 3.可由CPU调用执行的程序所对应的地址空间称为_____。 A.作业的地址空间 B.物理存储空间 C.名空间 D.虚拟地址空间 4.程序中由符号名组成的空间称为_____。 A.作业的地址空间 B.物理存储空间 C.名空间 D.虚拟地址空间 5.程序经编译与链接后,相对地址集合而成的空间称为_____。 A.作业的地址空间 B.物理存储空间 C.名空间 D.虚拟地址空间 6.所谓动态重定位,地址变换是发生在_____。 A.程序装入时 B.程序执行时 C.程序执行前 D.程序链接时 7.用重定位寄存器方式进行动态重定位,如果寄存器中的地址为1000,指令中的逻辑地 址是500,CPU执行到该指令时,实际访问的物理地址是_____。 A.1000 B.500 C.1500

D.以上都不对 8.下面所列的存储管理方案中,_____实行的不是动态重定位。 A.固定分区 B.可变分区 C.分页式 D.请求分页式 ——页式存储管理—— 9.在一个页式存储管理的系统中,逻辑地址是3654,页的大小为1K,那么,该逻辑地址 的页号和页内地址分别为_____。 A.3,582 B.3,654 C.4,582 D.4,654 10.逻辑地址是162H,在页式存储管理系统中,页和块的大小均为1K,第0页装入第1 块,第1页装入第4块。那么,在程序执行时,CPU将访问的地址是_____H。 A.1162 B.562 C.1378 D.354 11.关于页式存储管理,以下说法错误的是_____。 A.程序的地址空间是连续的,而其运行的存储空间可以是不连续的 B.页表作为一个数据结构存放在主存,会影响程序执行的速度 C.地址空间的分页大小必须和主存空间的分块的大小一样 D.页表是以映象方式实现动态重定位的重要数据结构 12.页表重定位方式几乎以降低计算速度一半为代价来获取分页存储管理的好处,这是因 为_____。 A.要将逻辑地址换算成页号和页内地址 B.用户程序被装入了不连续的内存块中 C.如果被访问的页不在内存时,必须装入新的页 D.访问内存地址的同时必须访问主存中的页表 13.实现分页存储管理的系统中,分页是由_____完成的。 A.程序员 B.用户 C.操作员 D.系统 14.在一个分页式存储管理系统中,页表的内容如下,若页面大小为4K,则地址转换机构 将相对地址0 A.8192

存储器管理

第六章存储管理习题 一、选择题 1.把作业地址空间中使用的逻辑地址变成内存中物理地址称为()。 A、加载 B、重定位 C、物理化 D、逻辑化 2.在可变分区存储管理中的紧凑技术可以()。 A.集中空闲区 B.增加主存容量 C.缩短访问时间 D.加速地址转换 3.在存储管理中,采用覆盖与交换技术的目的是( )。 A.减少程序占用的主存空间 B.物理上扩充主存容量 C.提高CPU效率 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.要求程序运行前必须全部装入内存且在运行过程中一直驻留在内存

操作系统学习资料-第五章 存储管理习题

第五章存储管理 一. 选择最合适的答案 1.分页存储管理的存储保护是通过( )完成的. A.页表(页表寄存器) B.快表 C.存储键 D.索引动态重定 2.把作业地址空间中使用的逻辑地址变成内存中物理地址称为()。 A、加载 B、重定位 C、物理化 D、逻辑化 3.在可变分区存储管理中的紧凑技术可以()。 A.集中空闲区 B.增加主存容量 C.缩短访问时间 D.加速地址转换 4.在存储管理中,采用覆盖与交换技术的目的是( )。 A.减少程序占用的主存空间 B.物理上扩充主存容量 C.提高CPU效率 D.代码在主存中共享 5.存储管理方法中,( )中用户可采用覆盖技术。 A.单一连续区 B. 可变分区存储管理 C.段式存储管理 D. 段页式存储管理 6.把逻辑地址转换成物理地址称为()。 A.地址分配 B.地址映射 C.地址保护 D.地址越界 7.在内存分配的“最佳适应法”中,空闲块是按()。 A.始地址从小到大排序 B.始地址从大到小排序 C.块的大小从小到大排序 D.块的大小从大到小排序 8.下面最有可能使得高地址空间成为大的空闲区的分配算法是()。 A.首次适应法 B.最佳适应法 C.最坏适应法 D.循环首次适应法 9.硬盘容量1G,内存容量为1024k,那么虚拟存储器最大实际容量可能是( ) 。 A.1024K B.1024M C.10G D.10G+1M 10.用空白链记录内存空白块的主要缺点是()。 A.链指针占用了大量的空间 B.分配空间时可能需要一定的拉链时间 C.不好实现“首次适应法” D.不好实现“最佳适应法” 11.一般而言计算机中()容量(个数)最多. A.ROM B.RAM C.CPU D.虚拟存储器 12.分区管理和分页管理的主要区别是()。 A.分区管理中的块比分页管理中的页要小 B.分页管理有地址映射而分区管理没有

相关文档
最新文档