当前位置:文档之家› 三内存管理(第3章讲义)

三内存管理(第3章讲义)

三内存管理(第3章讲义)
三内存管理(第3章讲义)

三、内存管理

一、考试大纲

(一)内存管理基础

1.内存管理概念

程序装入与链接;逻辑地址与物理地址空间;内存保护。

2.交换与覆盖

3.连续分配管理方式

单一连续分配;分区分配。

4.非连续分配管理方式

分页管理方式;分段管理方式;段页式管理方式

(二)虚拟内存管理

1.虚拟内存基本概念

2.请求分页管理方式

3.页面置换算法

最佳置换算法(OPT);先进先出置换算法(FIFO);最近最少使用置换算法(LRU);时钟置换算法。

4.页面分配策略

5.抖动

抖动现象;工作集

6.请求分段管理方式

7.请求段页式管理方式

二、知识点归纳

(一)内存管理基础

1.内存管理概念

内存是指处理器可以直接存取指令和数据的存储器,内存和处理器都是计算机系统的一种重要资源。在多道程序设计技术出现以后,对存储管理提出了更高的要求。内存管理的主要任务是为多道程序的运行提供良好的环境,方便用户使用存储器,提高存储器的利用率以及从逻辑上扩充存储器。

在操作系统中,将一个用户的源程序变为一个可在内存中执行的进程,通常要经过以下几步:

1)编译。由编译程序将用户源代码编译成若干个目标模块;

2)链接。由链接程序将编译后形成的一组目标模块,以及它们所需要的库函数链接在一起,形成一个完整的装入模块;

3)装入。由装入程序将装入模块装入内存。

(1)程序的链接

源程序经过编译后,可得到一组目标模块,这时需要利用系统中链接程序将这组目标模块链接在一起,形成装入模块。根据链接时间的不同,可以分成三种链接方式,即静态链接、装入时的动态链接和运行时的动态链接。

1)静态链接。在程序运行前,先将各目标模块及它们所需的库函数,链接成一个完整的装配模块,以后不再拆开。静态链接方式需要解决两个问题:外部调用符号到相对地址的转换;相对地址到绝对地址的的转换;

2)装入时的动态链接。在将目标模块装入内存时,采用边装入边链接的方式。该方式

具有以下优点:便于目标模块的修改和更新;便于实现对目标模块的共享。

3)运行时的动态链接。事先不对各个模块进行链接,而是在程序执行中当需要该模块时,再将该模块调入内存,并进行链接。采用这种方式,凡在执行过程中没有用到的目标模块,都不会被调入内存,这样不仅可加快程序的装入过程,而且可以节省大量的内存空间。

(2)程序的装入

程序的装入方式有三种,它们分别是绝对装入方式、可重定位的装入方式以及动态装入方式,现介绍如下。

1)绝对装入方式

在编译时,如果知道程序将驻留在内存的什么位置,那么编译程序将产生包含有内存绝对地址(也称实际地址)的目标代码。这样装入程序就会按照目标代码中的地址,将程序和数据装入到内存的实际位置。程序中使用的绝对地址,既可以在编译或汇编时给出,也可由程序员直接赋予。但因为需要程序员熟悉当前内存的使用情况,所以要求较高。

2)可重定位的装入方式

在多道程序的环境下,所得到的目标模块的起始地址通常是从0开始的,程序中的其它地址都是相对于起始地址进行计算的。此时应采用重定位装入方式,根据内存的当前情况,将装入模块装入到内存的适当位置。由于装入模块中的所有地址与实际装入内存的物理地址不同,所以需要进行地址变换(在原先相对地址的基础上加上内存装入位置的地址)。如下图所示

通常,把在装入程序时对目标模块中的指令和数据的地址变换过程称为重定位。又因为地址变换是在装入时一次完成的,所以称为静态重定位。

3)动态运行时的装入方式

动态运行时的装入程序,在把装入模块装入内存后,并不立即将其中的相对地址转换为绝对地址,而是把地址转换推迟到程序执行前再进行。因此,装入内存后的所有地址都仍是相对地址。

(3)逻辑地址与物理地址空间;

由编译程序所产生的所有目标模块中,使用的都是相对地址,即其起始地址为0,每个模块中的地址都是相对于起始地址计算的。而物理地址是指内存中的实际的地址空间。

(4)内存保护

保证进入内存的各道作业都在自己的存储空间内运行,互不干扰。既要防止一道作业由于发生错误而破坏其他作业,也要防土破坏系统程序。这种保护一般由硬件和软件配合完成

2.交换与覆盖

交换技术就是把暂时不用的某个程序及数据部分(或全部)从内存移到外存中去,以便腾出必要的内存空间,或把指定的程序或数据从外存读到相应的内存中,并将控制权交给它,使其在系统上运行的一种内存扩充技术。

覆盖技术,就是把一个大的程序划分为一系列覆盖,每个覆盖就是一个相对独立的程序单位,把程序执行时并不要求同时装入内存的覆盖组成一组,称为覆盖段,这个覆盖段分配到同一个存储区域,这个存储区域称为覆盖区,它与覆盖段一一对应。

交换技术不要求程序员给出程序段之间的覆盖结构,而且交换主要是在进程或作业之间进行;而覆盖则主要在同一个作业或进程中进行。另外,覆盖只能覆盖与覆盖程序段无关的程序段。

3.连续分配管理方式

连续分配方式,是指为用户程序分配一个连续的内存空间。可分为单一连续分配方式和分区分配方式两大类。

(1)单一连续分配

这是一种最简单的存储管理方式,只能用于单用户、单任务的操作系统。采用该方式时,可把内存分为系统区和用户区两部分,系统区位于内存的低址部分,供OS使用;用户区是除系统区以外的全部内存空间,是供用户程序使用的部分。

单一连续分配方式的主要特点是管理简单,只需要很少的软件和硬仍支持。且便于用户了解和使用。但采用这种存储分配方式,内存中只能装入一道作业运行,从而导致各类资源的利用率都不高。

(2)分区分配

分区式分配是能满足多道程序设计需要的一种最简单的存储管理技术。通常,按照分区的划分方式,它又可分为固定分区分配、动态分区分配以及可重定位的分区分配等三种方式。

1)固定分区分配

固定式分区法是一种最简单的可运行多道程序的存储管理方式。它将用户的内存空间划分为若干个固定大小的区域,在每个分区中只装入一道作业,这样,用户空间被划分为几个分区,便允许有几道作业并发运行。当有一个空闲分区时,便可以再从外存的后备作业队列中选择—个适当大小的作业装入该分区,当该作业结束时,又可再从后备作业队列中找出另一作业调入该分区。

可用下述两种方法将内存的用户空间划分为若干个固定大小的分区:

a)分区大小相等,就是使所有的内存分区大小相等。其缺点是缺乏灵活性,即当程序太小时,会造成内存空间的浪费;当程序太大时,一个分区又不足以装入该程序,致使该程序无法运行。尽管如此,这种划分方式仍被用于利用一台计算机去控制多个相同对象的场合,因为这些对象所需的内存空间是大小相等的。例如,炉温群控系统,就是利用一台计算机去控制多台相同的冶炼炉。

b)分区大小不等。为了克服分区大小相等而缺乏灵活性的这个缺点,把内存区划分成含有多个较小的分区、适量的中等分区及少量的大分区。这样,便可根据程序的大小为之分配适当的分区。

2)动态分区分配

动态分区分配是在作业装入和处理过程中建立的分区,要求分区的容量能正好适应作

业的大小。在作业进入系统前,根据作业的大小来申请所需存储容量,然后由系统实施分配。

为了实现分区分配,系统中必须设置相应的数据结构,常用的有两种形式:空闲分区表和空闲分区链。

为把一个新作业装入内存,须按照一定的分配算法,从空闲分区表或空闲分区链中选出一分区分配给该作业。目前常用的有以下三种分配算法。

a )首次适应算法。以空闲分区链作为数据结构,在分配内存时,从链首开始顺序查找,直至找到一个大小能满足要求的空闲分区为止,从该分区中划出一块内存空间分配给请求者,余下的空闲分区仍留在空闲链中。如果从链首直至链尾都不能找到满足要求的分区,则此次内存分配失败。

b )循环首次适应算法。该算法是由首次适应算法演变而成的。在为进程分配内存空间时,不再是每次都从链首开始查找,而是从上次找到的空闲分区的下一个空闲分区开始查找。这种分配方式的优点是,使得内存中的空闲分区分布的更均匀,减少查找空闲分区的开销。

c )最佳适应算法。该算法要求将所有的空闲分区按其容量从小到大的顺序形成一个空闲分区链,这样,从链首开始查找时,第一次找到的合适分区,就是既能满足要求又是最小的空闲分区。

3)可重定位分区分配

在连续分配方式中,必须把一个作业装入连续的内存空间,时间长了,内存中会出现很多内存碎片,而重定位式分区分配是解决碎片问题的简单而有效的办法。共基本思想是移动内存中的所有作业使之成为一个连续区域,继而留下一个较大的空白内存区。这种过程我们称之为“拼接”或“紧凑”。由于经过紧凑后的某些用户程序在内存中的位置发生了变化,所以还需要对程序和数据的地址进行修改,这叫做重定位。

4.非连续分配管理方式

连续分配方式会形成许多“碎片”,虽然可通过“紧凑”方法将许多碎片拼接成可用的大块空间,但需要为之付出很大开销。如果允许将一个进程直接分散地装入到许多不相邻接的分区中,则无须再进行“紧凑”。基于这一思想而产生了离散分配方式。 (1)分页管理方式

所谓分页管理方式,是允许将一个进程直接分散地装入到许多不相邻接的分区中,分配的基本单位是页。

1)页面与页表

页面。分页存储管理是将一个进程的逻辑地址空间分成若干个大小相等的片,称为页面,并为各页加以编号。相应地,把内存空间也分成与页面相同大小的若干个存储块,称为(物理)块。在为进程分配内存时,以块为单位将进程中的若干个页分别装入到多个可以不相邻接的物理块中。一个页的地址分成两部分:页号和位移量,如下图

页表。在分页系统中,为了能在内存中找到每个页面所对应的物理块。系统又为每个进程建立了一张页面映像表,简称页表。在进程地址空间内的所有页,依次在页表中有—页表项,其中记录了相应页在内存中对应的物理号。如图3-2所示

2)地址变换机构

为了能将用户地址空间中的逻辑地址变换为内存空间个的物理地址,在系统中必须设置地址变换机构。由于页内地址和物理地址是一一对应的,因此,地址变换任务就是借助于页表来完成的。

基本地址变换。在系统中只设置一个页表寄存器,用来存放页表在内存中的始址和页表的长度。当进程要访问某个逻辑地址中的数据时,分页地址变换机构会自动地将地址分为页号和页内地址两部分,再以页号为索引去检索页表。在检索前先将页号与页表长度相比较,判断是否有效。然后将页表始址与页号和页表项长度的乘积相加,便得到该表项在页表中的位置,进而得到该页的物理块号。

3)具有快表的地址变换机构

为了提高地址变换速度,可在地址变换结构中,增设一个具有并行查寻能力的特殊高速缓冲寄存器,称为快表。地址转换方式变为,将逻辑地址先在快表中查询转换,如失败,再访问内存中的页表。访问结束后,将该表项存入快表,以备下次查询。

4)两级页表和多级页表

现代的大多数计算机系统,都支持非常大的逻辑地址空间(232一264)。在这样的环境下,页表就变得非常大,要占用相当大的内存空间。解决的方法有二级页表和多级页表。对于要求连续的内存空间存放页表的问题,可利用将页表进行分页,并离散地相各个页而分别存放在不同的物理块中的办法来加以解决,同样也要为离散分配的页表再建立一张页表,称为外层页表,在每个页表项中记录了页表页面的物理块号。为了地址变换实现上的方便起见,在地址变换机构中同样需要增设一个外层页表寄存器,用于存放外层页表的始址,并利用逻辑地址中的外层页号,作为外层页表的索引,从中找到指向页表分页的地址。

多级页表如果对外层页表再进行分页,并设置更高的页表来记录外层页表分页的存储情况。就构成了三级或多级页表。 (2)分段管理方式

所谓分段管理方式,是允许将一个进程直接分散地装入到许多不相邻接的分区中,分配的基本单位是段。

1)分段系统的基本原理

分段。在分段存储管理方式中,作业的地址空间被划分为若干个段,每个段定义了一

组逻辑信息。每段可用一个段号来代替段名,都是从0开始编址,并采用一段连续的地址空间。分段系统的的地址具有如下结构:

段表。像分页系统那样,在系统中为每个进程建立一张段映射表,简称“段表”。每个段在表中占用一个表项,其中记录了该段在内存中的起始地址和段的长度。

地址变换机构。为了实现从进程的逻辑地址到物理地址的变换功能,在系统中设置了段表寄存器,用于存放段表始址和段表长度。在进行地址交换时,系统将逻辑地址中的段号与段表长度进行比较。若段号大于段表长度,表示段号太大,访问越界,于是产生越界中断信号;若末越界,则根据段表的始址和该段的段号,计算出该段对应段表项的位置,从中读出该段内存的起始地址,然后,再检查段内地址是否超过该段的段长。若超过,同样发出越界中断信号;若未越界,则将该段的基址与段内地址相加,即可得到要访问的内存物理地址。

(3)段页式管理方式

分页与分段存储管理方式各有优缺点,所以将二者结合起来形成段页式存储系统,它既可以具有分段系统的便于实现、分段可共享、易于保护、可动态链接等优点,又可以像分页系统那样很好的解决内存的外部碎片问题。

基本原理。段页式系统先将用户程序分成若干个段,再把每个段分成若干个页,并为每个段取一个段名。如图3-4所示。

地址变换过程。在段页式系统中,为了便于实现地址变换,须设置一个段表寄存器,其中存放段表始址和段长。进行地址转换时,首先利用段号S ,将它与段长TL 进行比较。若S

1.虚拟内存基本概念

基于局部性原形,应用程序在运行之前,没有必要全部装入内存,仅需将那些当前需要运行的部分页面或段先装入内存便可运行,其余部分暂留在磁盘上。运行时,如其所要访问的页(段)已调入内存,便可继续执行下去;如未调入内存(称为缺页或缺段),此时程序利用操作系统所提供的请求调页(段)功能,将它们调入内存,以便进程能继续执行下去。如果此时内存已满,无法再装入新的页(段),则还须利用页(段)的置换功能,将内存中暂时不用的页(段)调至硬盘上,腾出足够的内存空间后,再将要访问的页(段)调入内存,使程序继续执行下去。这样,使可使一个大的用户程序能在较小的内存空间中运行,也可在内存中同时装入更多的进程使它们并发执行。从用户角度看,该系统所具有的内存空间 ,将比实际内存容量大得多,所以把这样的存储器系统称为虚拟存储器。

2.请求分页管理方式。在分页系统的基础上增加了请求调页功能和页面置换功能所形成的页式虚拟存储系统。

(1)硬件支持。主要的硬件支持有: 1)请求分页的页表机制。它是在纯分页的页表机制上增加若干项形成的数据结构。 其基本作用是将程序地址中的逻辑地址转换成内存中的物理地址。如图3-4所示

2)缺页中断机构。即每当用户程序要访问的页面尚未调入内存时,就产生缺页中断,请求操作系统根据该页在外存的地址把它调入内存。缺页中断是一个比较特殊的中断,

它与

一般的中断相比,有着明显的区别,主要表现如下:在指令的执行期间产生和处理缺页中断;一条指令可以产生多个缺页中断。

3)地址变换机构。它同样是从分页地址变换机构的基础上发展形成的。

(2)实现请求分页的软件。这里包括有用于实现请求调页的软件和实现页面置换的软件。它们在硬件的支持下将程序运行时所需的页面调入内存,再将内存中暂时不用的页面从内存置换到磁盘上。

3.页面置换算法

页面置换算法是用来选择换出页面的算法。页面置换算法的优劣直接影响到系统的效率。

(1)最佳置换算法(OPT)

最佳置换算法是从内存中选择永远不再需要的页面或在最长的时间以后才需要访问的页面予以淘汰。实际上,这种算法无法实现,因为页面访问的未来顺序是很难精确预测的。但可以利用该算法评价其他算法的优劣。

(2)先进先出置换算法(FIFO)

先进先出置换算法总是选择在内存中驻留时间最长的页面予以沏汰,即先进入内存的页面先推出内存。这种方法的出发点是最早调入主存的页面,其不再使用的可能计会大一些。该算法对只有按线性顺序访问的程序比较合适,而对其他情况则效率不高。

(3)最近最少使用置换算法(LRU)

该算法选择最近一段时间内最长时间没有被访问过的页面予以淘汰。这种算法的主要出发点是,如果某个页由被访问过了,则它可能马上还要被访问到,或者反过来说,如果某页面很长时间未被访问,则它在最近一段时间也不会被访问。

(4)时钟置换算法。

也称为最近末使用算法,它是LRU和FIFO的折衷。该算法要求为每页设置—个访问位,并将内存中的所有页链接成一个循环队列。当某页被访问时,系统将其访问位设置为l。置换时采用一个指针,从当前的指针位置开始在、按序检查各页,若访问位为0则选择该页换出,若访问位为1则将其设置为0,最后指针停留在被置换页的下—页上。

4.页面分配策略

1)固定分配局部置换。采用这种策略时,为每一个进程分配固定数量的物理块,在进程的整个运行期间进程拥有的物理块数不再改变。如果进程在运行中出现缺页,则只能从该进程的几个页面中选择一页换出,然后再调入该页,以保证分配给该进程的内存空间量不变。

2)可变分配全局置换。采用这种策略时,先为系统中的每一个进程分配一定数量的物理块,操作系统本身也保持一个空闲物理块队列。当某个进程发生缺页时,由系统从空闲物理块队列小取出一个物理块分配给该进程,并将缺页装入其中。这样,凡产生缺页的进程都获得新的物理块。

3)可变分配局部置换。采用这种策略时,为每一个进程分配一定数量的物理块,当某个进程发生缺页时,只允许从该进程的页面今选出一页换出,这样就不会影响其他进程的运行。如果某个进程在运行过程中频繁地发生缺页中断,则系统再为该进程分配若干个物理块,直到进程的缺页率降低到到适当程度为;反之,若一个进程在运行过程中的缺页率特别低.则系统可适当减少分配给该进程的物理块数。

5.抖动

抖动现象。刚被淘汰出内存的页面,过后不久又要访问它,需要再次将其调入,而该页调入内存后不久又再次被淘汰出内存,然后又要访问它。如此反复,使得系统把大部分时间用在了页面的调进换出上,而几乎不能完成任何有效的工作,这种现象被称为抖动。

工作集。指在某段时间间隔里,进程实际要访问的页面集合。虽然只要装入少数几页就

可以启动程序运行,但为使程序能有效地运行,较少地产生缺页,就必须使程序的工作集全部在内存中,然而,由于我们无法预知程序在不同时刻将访问哪些页面,因而只能像置换算法那样,利用程序过去某段时间内的行为,作为程序在将来某段时间内行为的近似。具体的说,便是把某进程在时间t 的工作集记为w (t ,△),把变量△称为工作集窗口尺寸。 6.请求分段管理方式

这是在分段系统的基础上,增加了请求调段从分段置换功能后,所形成的段式虚拟存储系统。它允许只装入若干段(而非所有的段)的用户程序和数据,即可启动运行。以后再通过调段功能和段的置换功能,将暂不运行的段调出,同时调入即将运行的段。置换是以段为单位进行的。

为了实现请求分段,系统同样需要必要的破件支持。一般需要下列支持:

1)请求分段的段表机制。这是在纯分段的段表机制基础上增加若干项而形成的。如图3-5所示

2)缺段中断机构。每当用户程序所要访问的段尚末调入内存时,产生一个缺段中断,请求操作系统将所缺的段调入内存。

3)地址变换机构。请求分段系统的地址变换机构是在分段系统地址交换机构的基础上形成的。因为被访问的段并非全在内存,因而在地址变换时,如果发现所要访问的段不在内存时,必须先将所缺的段调入内存,并修改段表之后,才能再利用段表进行地址变换,为此,变换机制增加某些功能。如缺段中断的请求及处理等。 7.请求段页式管理方式

目前,有不少虚拟存储器是建立在段页式系统基础上的,通过增加请求页和页面置换功能而形成了段页式虚拟存储器系统,而且把实现虚拟存储器所需支持的硬件集成在处理器芯片上。

三、经典例题解析

现有四个作业

J1,J2,J3

,J4,它们分别需要内存20KB 、42KB 、120KB 、130KB 的空间,若采用最先适应算法,以怎样的次序可将这四个作业都装入主存,并给出装入后的空白区表。 分析:

最先适应算法即首次适应算法,它要求空闲分区(即空白区)按地址递增的次序排列,在进行内存分配时,总是从空闲分区表首开始顺序查找,直到找到第一个能满足其大小要求的空闲分区为止。然后,再按照作业大小,从该分区中划出一块内存空间分配给请求者,余下的空闲分区仍留在空闲分区表中。为描述方便起见,假设将空闲分区的低地址端分配给作业。

解答:

按J1,J2,J3,J4顺序这四个作业装入主存。其装入过程如下:

(1)在装入J1时,J1申请20KB,选中1号空白区,分配后1号空白区还剩80KB,J1装入后的空白区表如表1所示。

(2)在装入J2时,J2申请42KB,选中1号空白区,分配后1号空白区还剩38KB,J2装入后的空白区表如表2所示。

表2 空白区表

J3装入后的空白区表如表3所示。

(4)在装入J4时,J4申请130KB,选中3号空白区,分配后3号空白区还剩6KB,J4装入后的空白区表如表4所示。

表4 空白区表

2.(10分)假定某页式管理系统,主存为64KB,分成16块,块号为0,1,2,3,4,…,15。设某作业有4页,其页号为0,1,2,3,被分别装入主存的2,4,1,6块。试问:(1)该作业的总长度是多少字节?(按十进制)

(2)写出该作业每一页在主存中的起始地址。

(3)若有多个逻辑地址[0,100]、[l,50]、[2,0]、[3,60],试计算出相应的内存地址。(方括号内的第一个元素为页号,第二个元素为页内位移)

分析:

在页式管理系统中,页面大小和物理块的大小相同,所以通过计算物理块的大小可以得

出该作业的长度;通过页表机制,我们知道每个逻辑地址分成两部分:页号+页内地址,所以物理地址的计算方法为:页号对应的物理块地址+页内地址。

解答:

(1)每块的长度为64KB/16=4KB

在页式存储管理系统中,页与块大小相等,因此作业总长度为4KB*4=16KB=16384B。

(2)因为页号为0、1、2、3的页分别装入主存入2、4、1、6块中,所以该作业每一页在主存中的起始地址如下:

第0页在主存中的起始地址:4KB*2=8KB=8192B

第1页在主存中的起始地址:4KB*4=16KB=16384B

第2页在主存中的起始地址:4KB*1=4KB=4096B

第3页在主存中的起始地址:4KB*6=24KB=24576B

(3)内存地址=块地址+页内地址,地址变换如下:

逻辑地址[0,100]的内存地址为:4KB*2+100=8292B

逻辑地址[1,50]的内存地址为:4KB*4+50=16434B

逻辑地址[2,0]的内存地址为:4KB*1+0=4096B

逻辑地址[3,60]的内存地址为:4KB*6+60=24636B

3.若在一分页存储管理系统中,某作业的页表如下所示。已知页面大小为1024字节,试将逻辑地址1011,2148,3000,5012转化为相应的物理地址(注:此处块号即为页面号)。

分析:

本题中,为了描述方便,设页号为P,页内位移为W,逻辑地址为A,内存地址为M,页面大小为L,则

P=int(A/L)

W=A mod L

另外因为页面大小与物理块的大小相等,所以物理块的大小也为1024B

解答:

(1)对于逻辑地址1011

P=int(1011/1024)=0

W=1011 mod 1024=1011

A=1101=(0,1101)

查页表第0页在第2块,所以物理地址为M=1024*2+1011= 3059。

(2)对于逻辑地址为2148

P=2148/1024=2

W=2148 mod 1024=100

A=2148=(2,100)

查页表第2页在第1块,所以物理地址为M=1024*1+100=1124。

(3)对于逻辑地址为3000

P=3000/1024=2

W=3000 mod 1024=952

A=3000=(2,952)

查页表第2页在第1块,所以物理地址为M=1024*1+952=1976

(4)对于逻辑地址5012

P=5012/1024=4

W=5012 mod 1024=916

因页号超过页表长度,故该逻辑地址非法。

4.(10分)在一个请求分页系统中,假如系统分配给一个作业的物理块数为3,并且此作业的页面执行顺序为2,3,2,1,5,2,4,5,3,2,5,2。试用FIFO和LRU两种算法分别计算出程序访问过程中所发生的缺页次数。

分析:

先进先出算法的实质是:总是选择作业中在内存驻留时间最长的一页淘汰。在本例中,给出了页面执行顺序,只需要按其进行页面的替换,记录缺页次数即可。若在内存中为每一作业进程开,对于题中的页面访问过程,采用FIFO淘汰算法,其页面调度过程见

测它未来的行为。它认为过去一段时间里不曾被访问过的页,在最近的将来可能也不再会被访问。这种算法的实质是:当需要置换一页时,选择在最近一段时间内最久未用的页予以淘汰。

解答:

假设系统初始时在内存中没有页面。

(1)采用先进先出淘汰算法,缺页次数为9次。

(2)采用最近最少使用淘汰算法,缺页次数为7次。

5.某请求页式存储管理,允许用户编程空间为64个页面(每页1kB),主存为32 kB。如有一用户程序有10页长,且某时刻该用户页面映射表如图所示。

如果分别遇有对以下三个虚地址:0AC5H、1AC5H、3A05H处的操作,试计算并说明

存储管理系统将做如何处理。

分析:

首先分析虚地址,三个虚地址均为十六进制,存储系统在接收虚地址后,应先将其转化为二进制数存储;然后根据页面大小(1kB=1024B)算出页内位移及页号p,再到页表里搜寻物理块号,进行物理地址的转换。请求页式存储管理中,物理页的大小与逻辑页的大小相等,所以页的大小为1kB,页内地址为10位。

解答:

下面分别计算三个虚地址。

(1)0AC5H=(10 1011000101)B,得d=1011000101,P=2在页表当中搜寻得物理块号4,首址为4 kB,所以物理地址为(100 1011000101)B=(12C5)H。

合成物理地址为(12C5)H。

(2)1005H=(100 0000000101)B,得d=101000101,P=4页表中没有该页号,此时发生缺页中断,将根据当前的页面调度策略选择页表当中的一项调换出内存,假设选择第0页,则第4页获得内存物理块号8,所以物理地址为(1000 0000000101)B=(2005)H。

合成物理地址为(2005)H。

(3)3A05H=(1110 1000000101)B,得d=1000000101,P=14,页表中没有该页号,根据页面调度策略选择页表当中的一项调换出内存,假设选择第1页,则第7页获得内存物理块号7,所以物理地址为(1111000000101)B=1E05H。

合成物理地址为1E05H。

四、题型练习

一、单项选择题:1~40题,每小题2分,共80分。在每小题给出的四个选项中,请选出一

项最符合题目要求的。

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.提高CPU效率

D.代码在主存中共享

12在内存分配的“最佳适应法”中,空闲块是按()。

A.始地址从小到大排序

B.始地址从大到小排序

C.块的大小从小到大排序

D.块的大小从大到小排序

13.下面最有可能使得地址空间成为大的空闲区的分配算法是()。

A.首次适应算法

B.最佳适应法

C.最坏适应法

D.循环首次适应法

14.首次适应算法的空闲区是()。

A.按地址递增顺序连在一起

B.始端指针指向最大空闲区

C.按大小递增顺序连在一起

D.寻找从最大空闲区开始

15.在可变分区存储管理中的拼接技术可以()。

A.集中空闲区B.增加主存容量

C.缩短访问周期D.加速地址转换

16.在回收内存时可能出现下述情况:释放区只与插入点前一空闲分区F1相邻接,此时应( )。

A.唤醒为回收区建立一分区表项,填上分区的大小和站址

B.以F1分区的表项作为新表项且不做任何改变

C.以F1分区的表项作为新表项,修改新表项的大小

D.以F1分区的表项作为新表项,同时修改新表项的大小和始址

17.在几种基本的放置策略中,空白区是按大小递增的顺序链接在一起的是()策略。

A.首次匹配B.最佳匹配

C.最坏匹配D.以上三者

18.在以下存贮管理方案中,不适用于多道程序设计系统的是( ) 。

A.单用户连续分配B.固定式分区分配

C.可变式分区分配D.页式存贮管理

19.在可变式分区分配方案中,某一作业完成后,系统收回其主存空间,并与相邻空闲区合并,为此需修改空闲区表,造成空闲区数减1的情况是() 。

A.无上邻空闲区,也无下邻空闲区

B.有上邻空闲区,但无下邻空闲区

C.有下邻空闲区,但无上邻空闲区

D.有上邻空闲区,也有下邻空闲区

20.分区管理要求对每一个作业都分配()的内存单元。

A.地址连续B.若干地址不连续

C.若干连续的帧D.若干不连续的帧

21.分区管理和分页管理的主要区别是()。

A.分区管理中的块比分页管理中的页要小

B.分页管理有地址映射而分区管理没有

C.分页管理有存储保护而分区管理没有

D.分区管理要求一道程序存放在连续的空间内而分页管理没有这种要求。

22.在下列有关请求分页管理的叙述中,正确的是()。

A.程序和数据是在开始执行前一次性装入的

B.产生缺页中段一定要淘汰一个页面

C.一个被淘汰的页面一定要写回外存

D.在页表中要有“状态位”和“修改位”等信息

23.在请求分页系统中,页表中的访问字段是供()参考的。

A.页面置换B.内存分配

C.页面换出D.页面调入

24.在请求分页存储管理中,若采用FIFO页面淘汰算法,则当进程分配到的页面数增加时,缺页中断的次数()。

A.减少B.增加

C.无影响D.可能增加也可能减少

25.下面哪种内存管理方法不能实现虚存()?

A.动态页式管理

B.静态页式管理

C.分段存储管理

D.段页式存储管理

26.在虚拟存储系统中,若进程在内存中占3块(开始时为空),采用先进先出页面淘汰算

法,当执行访问页号序列为1,2,3,4,1,2,5,1,2,3,4,5,6时,将产生()次缺页中断?

A.7 B.8 C.9 D.10

27.解决碎片问题,以及使程序可浮动的最好的办法是采用()技术。

A.静态重定位

B.动态重定位

C.内存静态分配

D.内存动态分配

28.页式虚拟存储管理的主要特点是()。

A.不要求将作业装入到主存的连续区域

B.不要求将作业同时全部装入到主存的连续区域

C.不要求进行缺页中断处理

D.不要求进行页面置换

29.三种类型存储器的管理策略中,对页式系统或非页式系统没有多大区别的是()。

A.放置策略B.调入策略

C.淘汰策略D.都一样

30.对于分页系统与分段系统,下列说法正确的是()。

A.两者都采用离散分配方式

B.分页的目的是为了能更好地满足用户的需要

C.段的大小固定且由系统确定

D.分页的作业地址空间是二维的

31.能够装入内存任何位置的代码程序必须是( )

A.可重入的B.可重定位

C.可动态链接D.可静态链接

32.虚存管理和实存管理的主要区别是()

A.虚存区分逻辑地址和物理地址,实存不分;

B.实存要求程序在内存必须连续,虚存不需要连续的内存;

C.实存要求程序必须全部装入内存才开始运行,虚存允许程序在执行的过程中逐步装入;

D.虚存以逻辑地址执行程序,实存以物理地址执行程序

33.程序动态链接的时刻是()

A.编译时B.装入时

C.调用时D.紧凑时

34.下面哪种内存管理方法有利于程序的动态链接?()

A.分段存储管理B.分页存储管理

C.可变分区分配D.固定分区分配

35.采用段式存储管理的系统中,若地址用24位表示,其中8位表示段号,则允许每段的最大长度是()

A.32K B.64K C.128K D.256K

36.如果一个程序为多个进程所共享,那么该程序的代码在执行的过程中不能被修改,即程序应该是()

A.可执行码B.可重入码

C.可改变码D.可再现码

37.某段表的内容如下图所示,现执行某条指令Load 1, 2/154,逻辑地址2/154(其中段号

为2,段内地址为154),它对应的物理地址为( ) A .120K+2 B .480K +154 C .30K+154 D .2+480K 38.分页系统中的页面是为( ) A .用户所感知的 B .操作系统所感知的 C .编译系统所感知的 D .连接装配程序所感知的

39.MS —DOS 的存贮管理采用了( ) A .段式存贮管理 B .段页式存贮管理

C .单用户连续存贮管理

D .固定式分区存贮管理

40.作业在执行中发生了缺页中断,经操作系统处理后,应让其执行( )指令。 A .被中断的前一条 B .被中断的那一条 C .被中断的后一条 D .启动时的第一条 二、综合应用题 1.(10分)在某段式存储管理系统中,有一作业的段表如下表所示,求逻辑地址[0,50],[1,60],[2,90],[3,20]对应的主存地址(按十进制)(其中方括号中的第一个元素为段号,

程的代码段的长度为702个宇节,页表如图(a )所示。该进程在联想存储器中的页表如图b 所示。

现进程有如下的访问序列:其逻辑地址为八进制的105,217,567, 1120,2500。试问给定的这些地址能否进行转换?若能,请说明地址转换过程及相应的物理地址。若不能,则说明理由。

3

求其虚拟存储器的实际容量?

4.某虚拟存储器的用户空间共有32个页面,每页1KB ,主存16KB 。试问:

(1)逻辑地址的有效位是多少? (2)物理地址需要多少位?

(3)假定某时刻系统用户的第0,1,2,3页分别分配的物理块号为5,10,4,7,试将虚地址0A5C 和013C 变换为物理地址。

5.某请求页式管理系统,用户编程空间有40个页面,每个(200)H 个字节,假定某时刻用户页表中虚页号和物理块号对照表如下表1所示

表1 虚页号和物理块号对应表 求虚地址1A3CH 、123CH 分别对应的物理地址。

6.在分页存储管理系统中,存取一次内存的时间是8us ,查询一次快表的时间是1us ,缺页中断的时间是20us ,假设页表的查询与快表的查询同时进行 。当查询页表时,如果该页在内存但快表中没有页表项,系统将自动把该页页表项送入快表。

(1)求对某一数据进行一次次存取可能需要的时间?

(2)现连续对同一页面上的数据进行4次连续读取,求每次读取数据可能需要的时间?

7.有一请求分页管理系统,每页可存放200个整数,有一矩阵“int a[100][100]”以先行后列进行存储,此虚拟存储系统,分给进程3个物理块,其中1页用来存放程序,其余2页用来存放数据。假设程序已在内存,其余2页空闲。

程序A: 程序B:

for (i=0;i<=99;i++) for (j=0;j<=99;j++) for (j=0;j<=99;j++) for (i=0;i<=99;i++) a[i,j]=0; a[i,j]=0; 程序A 和程序B 执行过程中各会发生多少次缺页?

8.一进程已经分配到4个页帧,如表所示(所有数字为十进制,且以0开始),当进程访问第4页时,产生缺页中断,分别用FIFO 、LRU 和NRU 算法,决定缺页中断服务程序选择FIFO :第3页装入内存时间最久,所以换出第3页

LRU:第1页最近最长时间未用,所以换出第1页

NRU:选择在最近一段时间内未使用的任一页换出,所以可换出2页

五、参考答案

二.综合应用题

1.在某段式存储管理系统中,有一作业的段表如下表所示,求逻辑地址[0,50],[1,60],[2,90],[3,20]对应的主存地址(按十进制)(其中方括号中的第一个元素为段号,第二个

分析:

在段式存储管理系统中,地址转换的过程如下:将逻辑地址中的段号与段表长度进行比较。若段号大于段表长度,表示段号太大,访问越界出错;若末越界,则根据段表的始址和该段的段号,计算出该段对应段表项的位置,从中读出该段内存的起始地址,然后,再检查段内地址是否超过该段的段长。若超过,同样发出越界中断信号;若未越界,则将该段的基址与段内地址相加,即可得到要访问的内存物理地址。

解答:

对于逻辑地址[0,50],因50<150,其逻辑地址合法,对应的主存地址为500+50=550 对于逻辑地址[1,60],因60>50,其逻辑地址非法,产生地址越界中断。

对于逻辑地址[2,90],因90<120,其逻辑地址合法,对应的主存地址为900+90=990 对于逻辑地址[3,20],因20<100,其逻辑地址合法,但该段状态位为1,所以产生缺段中断,待缺段调入主存后再进行地址变换。

2.假定某操作系统存储器采用页式存储管理,页的大小为64字节,并假定某一进程的代码段的长度为702个宇节,页表如图(a)所示。该进程在联想存储器中的页表如图b所示。

现进程有如下的访问序列:其逻辑地址为八进制的105,217,567, 1120,2500。试问给定的这些地址能否进行转换?若能,请说明地址转换过程及相应的物理地址。若不能,则说明理由。 解答:

页面大小64,页内位移是6位,该进程所需页数702/64=11页,编号为0,1, …,10;逻辑地址为八进制(由3个二进制位组成),因此地址数的右边两位即为页内位移d ,其余左边高位为页号p 。

(105)O :P=1,d=5,得内存页帧号为F1,页内位移为5; (217)O :P=2, d=17,得内存页帧号为F2,页内位移为17。 以上两地址均在联想存储器中可找到,无需到内存中查找页表。

(567)O :P=5, d=67,该页号不在联存,需到主存页表项寻找页号,得内存页号为F5,页内位移为67;

(1120)O :P=11;(2500)O :P=25;

以上两地址均为页号越界,进程代码段所占页号最大为10,不可转换。 3

29 20 19 0

求其虚拟存储器的实际容量? 解答:

虚拟内存的实际大小由系统的逻辑地址结构、主存辅存容量共同决定。虚拟内存容量的理论值是210 *220=1G ;最大段内地址为220=1M ,远大于内存容量,其段长超过512K 的内存容量,故最大实际段长为512k 而不是1M 。

所以可计算虚拟存储容量为210 *512K =210 *0.5M=0.5G 。 0.5G<2G ,因此虚拟存储器的实际容量是0.5G 。

4.某虚拟存储器的用户空间共有32个页面,每页1KB ,主存16KB 。试问:

(1)逻辑地址的有效位是多少? (2)物理地址需要多少位?

(3)假定某时刻系统用户的第0,1,2,3页分别分配的物理块号为5,10,4,7,试将虚地址0A5C 和013C 变换为物理地址。

解答:

(1)程序空间的大小为32KB=215,因此逻辑地址的有效位数是15位。 (2)内存储空间的大小是16KB=214,因此物理地址至少需要14位。

第3章 存储管理(1)答案

第五章内存管理(1) 一、单项选择题 1.存储管理的目的是。 A.方便用户 B.提高内存利用率 C.方便用户和提高内存利用率 D.增加内存实际容量 解:存储管理的目的有两个,一是方便用户,二是提高内存利用率。本题答案为C。2.把作业空间中使用的逻辑地址变为内存中物理地址称为。 A.加载 B.重定位 C.物理化 D.逻辑化 解:在一般情况下,一个作业在装入时分配到的内存空间和它的地址空间是不一致的,因此,作业在CPU上运行时,其所要访问的指令、数据的物理地址和逻辑地址是不同的。显然,如果在作业装入或执行时,不对有关的地址部分加以相应的修改,将会导致错误的结果。这种将作业的逻辑地址变为物理地址的过程称为地址重定位。本题答案为B。 3.为了保证一个程序在主存中改变了存放位置之后仍能正确执行,则对主存空间应采用技术。 A.静态重定位 B.动态重定位 C.动态分配 D.静态分配 解:动态重定位采用动态运行装入方式,可以保证一个程序在主存中改变了存放位置后仍能正确执行。本题答案为B。 4.在存储管理中采用交换与覆盖,目的是。 A.从物理上扩充内存、 B.实现主存共享 C.节省存储空间 D.提高内存利用率 解:采用交换与覆盖技术可以提高内存利用率。本题答案为D。 5.是指将作业不需要或暂时不需要的部分移到外存,让出内存空间以调入其他所需数据。 A.覆盖技术 B.交换技术 C.虚拟技术 D.物理扩充 解:本题答案为B。 6.分区分配内存管理方式的主要保护措施是。 A.界地址保护 B.程序代码保护 C.数据保护 D.栈保护 解:在分区分配内存管理方式中,主要用上、下界寄存器保护分区,也称为界地址保护。本题答案为A。 7.在固定分区分配中,每个分区的大小是。 A.相同。 B.随作业长度变化 C.可以不同但预先固定 D.可以不同但根据作业长度固定 解:在固定分区分配中,每个分区的大小可以不相等,但事先必须确定,运行时不能改变。本题答案为C。 8.在可变式分区存储管理中的拼接技术可以。 A.集中空闲分区 B.增加内存容量 C.缩短访问周期 D.加速地址转换 解:拼接是指通过移动将多个分散的小分区合并成一个大分区。本题答案为A。 9.在可变分区分配管理中,某一作业完成后,系统收回其内存空间,并与相邻区合并,为此修改空闲区说明表,造成空闲分区数减1的情况是。 A.无上邻空闲分区,也无下邻空闲分区 B.有上邻空闲分区,但无下邻空闲分区 C.有下邻空闲分区,但无上邻空闲分区

《现代操作系统第四版》第三章答案

第三章内存管理习题 1.IBM360有一个设计,为了对2KB大小的块进行加锁,会对每个块分配一个4bit的密钥,这个密钥存在PSW(程序状态字)中,每次内存引用时,CPU都会进行密钥比较。但该设计有诸多缺陷,除了描述中所言,请另外提出至少两条缺点。 A:密钥只有四位,故内存只能同时容纳最多十六个进程;需要用特殊硬件进行比较,同时保证操作迅速。 2.在图3-3中基址和界限寄存器含有相同的值16384,这是巧合,还是它们总是相等?如果这只是巧合,为什么在这个例子里它们是相等的? A:巧合。基地址寄存器的值是进程在内存上加载的地址;界限寄存器指示存储区的长度。 3.交换系统通过紧缩来消除空闲区。假设有很多空闲区和数据段随机分布,并且读或写32位长的字需要10ns的时间,紧缩128MB大概需要多长时间?为了简单起见,假设空闲区中含有字0,内存中最高地址处含有有效数据。 A:32bit=4Byte===>每字节10/4=2.5ns 128MB=1282^20=2^27Byte 对每个字节既要读又要写,22.5*2^27=671ms 4.在一个交换系统中,按内存地址排列的空闲区大小是10MB,4MB,20MB,18MB,7MB,9MB,12MB,和15MB。对于连续的段请求: (a) 12MB (b) 10MB (c) 9MB

使用首次适配算法,将找出哪个空闲区?使用最佳适配、最差适配、下次适配算法呢? A:首次适配算法:20MB,10MB,18MB;最佳适配算法:12MB,10MB,9MB;最差适配算法:20MB;18MB;15MB;下次适配算法:20MB;18MB;9MB; 5.物理地址和虚拟地址有什么区别? A:实际内存使用物理地址。这些是存储器芯片在总线上反应的数字。虚拟地址是指一个进程的地址空间的逻辑地址。因此,具有32位字的机器可以生成高达4GB的虚拟地址,而不管机器的内存是否多于或少于4GB。 6.对下面的每个十进制虚拟地址,分別使用4KB页面和8KB页面计算虚拟页号和偏移量:20000,32768,60000。 A:转换为二进制分别为:0100111000100000 虚拟地址应该是16位1000000000000000 1110101001100000 4KB页面偏移量范围0~4027,需要12位来存储偏移量,剩下4位作为页号;同理8KB页面需要13位来存储偏移量,剩下3位作为页号;所以,4KB | 8KB 页号| 偏移量| 页号| 偏移量20000 | 0100 111000100000 | 010 0111000100000 32768 | 1000 000000000000 | 100 0000000000000 60000 | 1110 101001100000 | 111 0101001100000 7. 使用图3-9的页表,给出下面每个虚拟地址对应的物理地址:

第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.每次分配时总是顺序查找空闲区表,找到第一个能满足作业长度要求的空闲区,此种分

《操作系统》习题集:第3章 存储管理

第3章存储管理-习题集 一、选择题 1.把作业空间中使用的逻辑地址变为内存中物理地址称为()。【*,★,联考】 A. 加载 B. 重定位 C. 物理化 D. 逻辑化 2.为了保证一个程序在主存中改变了存放位置之后仍能正确执行,则对主存空间应采用()技术。【*,★, 联考】 A. 静态重定位 B. 动态重定位 C. 动态分配 D. 静态分配 3.分区分配内存管理方式的主要保护措施是()。(注:分区包括“固定分区”和“可变分区”)【**,09 考研】 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.某基于动态分区存储管理的计算机,其主存容量为55MB(初始为空),采用最佳适配算法,分配和释放的顺序 为:分配15MB,分配30MB,释放15MB,分配8MB,分配6MB,此时主存中最大空闲分区的大小是()。 【**,★,10考研】 A. 7MB B. 9MB C. 10MB D. 15MB 9.在分页存储管理中,主存的分配是()。【*,联考】 A. 以块为单位进行 B. 以作业的大小分配 C. 以物理段进行分配 D. 以逻辑记录大小进行分配 10.首次适应算法的空闲分区是()。【**,★,联考】 A. 按大小递减顺序连在一起 B. 按大小递增顺序连在一起 C. 按地址由小到大排列 D. 按地址由大到小排列 11.最佳适应算法的空闲分区是()。【**,联考】 A. 按大小递减顺序连在一起 B. 按大小递增顺序连在一起

操作系统考研复习 第三章内存管理

第三章存储器管理 1 源程序变为内存中可执行的程序需要经过哪些步骤?这些步骤分别有哪几种方式? A编译:源代码编译成目标模块.obj B链接:与库函数链接在一起,形成装入模块(静态链接、装入内存时动态链接、运行时动态链接) C装入:装入内存运行。有绝对装入(绝对地址)、可重定位装入(静态重定位;装入时地址重定位)、动态运行时装入(动态重定位;运行时地址重定位,需要重定位寄存器支持); 2 什么叫重定位?动态重定位特点是什么?(重定位的好处) 在存储器管理中什么是重定位?为什么要引进重定位技术?2014 当装入程序将可执行代码装入内存时,把逻辑地址转换成物理地址的过程,叫重定位。(一般没特殊说明,指的就是动态重定位) 1将程序分配到不连续的存储器中; 2只需投入部分代码即可运行; 3运行期间,根据代码需求动态申请内存; 4便于程序段的共享,可用向用户提供一个比存储空间大很多大地址空间。 3内存是如何进行保护的?(访问内存的地址是如何识别正确性的?) (内存保护是为了确保操作系统的地址区不受用户进程的影响) 使用重定位寄存器(含最小物理地址)和界地址寄存器(逻辑地址)来保护的。 首先将逻辑地址与界地址比较,小于则与重定位地址相加映射成物理地址;大于则出现越界中断。 4什么是覆盖技术、交换技术? 覆盖:把用户空间分成一个固定区和若干的覆盖区,经常活跃的放在固定区,其他按需要调入覆盖区。 覆盖优缺点:打破了将进程全部信息装入内存才能运行的限制; 当同时运行的程序代码量大于内存仍不能运行、并且用户需给出覆盖区的结构交换:即中级调度的进程的换入和换出。 (现在已经不使用覆盖技术,现在是通过虚拟存储技术来解决的) 1内存分配管理有哪些方式? 根据作业是否在同一分区划为连续分配和非连续分配。 A连续分配:1单一连续分配、2固定分区、3动态分区。 B非连续分配:1分页、2分段、3段页式(每个又根据是否使用虚拟内存技术分为基本和请求) 2简述连续分配管理的方式有哪些?优缺点有什么? A单一连续分配:分为系统区和用户区。无需内存保护。 优缺点:有内部碎片,内存利用率低,且只适用于单任务单用户的OS中。 B固定分区分配:将内存空间划分为固定大小区域,每个区域只装入一道作业。 缺点:程序太大放不进去、主存利用率低、产生内部碎片。 C动态分区分配:根据进程大小动态建立分区,使分区大小正好适应进程需要。 缺点:刚开始的时候是比较好的,后面会导致外部碎片的产生。 3什么是内部碎片?外部碎片、通过什么技术来解决? 内部碎片:程序小于固定分区大小,导致分区内部空间有剩余。 外部碎片:在分区外部产生难以使用的碎片。 外部碎片通过“紧凑”技术来解决。

第3章存储管理同步练习及答案

第3章存储管理 一、单项选择题 1.为避免主存中各种作业相互干扰,必须进行() A 重定位 B 地址映射 C 地址转换 D 存储保护 2.固定分区存储管理中,CPU在执行作业的指令时,均为核对不等式()是否成立,若不成立,则产生地址越界中断事件,终止该指令的执行。 A 界限地址≤绝对地址≤最大地址 B 下限地址≤绝对地址<上限地址 C 基址寄存器内容≤绝对地址≤限长寄存器内容 D 基址寄存器内容<绝对地址≤限长寄存器内容 3.在请求分页系统中,LRU算法是指()。 A 最早进入内存的页先淘汰 B 近期最长时间以来没被访问的页先淘汰 C 近期被访问次数最少的页先淘汰 D 以后再也不用的页面先淘汰 4.虚拟存储器是()。 A 可以提高计算机运算速度的设备 B 容量扩大了主存的实际空间 C 通过SPOOLING技术实现的 D 可以容纳和超出主存容量的多个作业同时运行的一个地址空间 5.下列存储管理方式中,相比而言,碎片最少,而且主存利用率最高的是()。 A 固定分区 B 可变分区 C 单用户连续存储管理 D 页式 6.采用可变分区存储管理主存时,使用移动技术可以()。 A 加快作业执行速度 B 集中分散的空闲区 C 扩大主存容量 D 加快地址转换 7.在一个请求页式存储管理中,一个程序的页面走向为4,3,2,1,4,3,5,4,3,2,1,5,并且采用LRU算法。设分配给程序的存储块数M分别为3和4,在访问总发生的缺页次数F为()。 A M=3,F=8;M=4,F=5 B M=3,F=10;M=4,F=8 C M=3,F=9;M=4,F=10 D M=3,F=7;M=4,F=6 8.单道系统中经常采用的存储管理方式是()存储管理。 A 固定分区 B 单用户连续 C 可变分区 D 页式 9.请求页式管理中,缺页中断率与进程所分得的内存页面数、()和进程页面流的走向等因素有关。 A 页表的地址 B 置换算法 C 外存管理算法 D 进程调度算法 10.下列存储管理方式中,一般采用静态重定位方式进行逻辑地址到物理地址转换的是()。 A 固定分区 B 段页式 C 可变分区 D 页式 11.下列管理方式中,能实现虚拟存储器的是()。 A 单用户连续方式 B 页式存储管理 C 固定分区D可变分区 12.所谓LFU页面置换算法,是指()。 A 驻留在内存中的页面随便挑选一页淘汰 B 将驻留在内存中时间最长的页页淘汰 C 将驻留在内存中最近最久未使用的一页淘汰 D 将驻留在内存中最近最不经常用的一页淘汰 13.页式存储管理中,每当CPU形成一个有效的地址时,则要查找页面。这一工作是由()实现的。 A 查表程序 B 存取控制 C 硬件自动 D 软件自动 14.设基址寄存器的内容为1000,在采用动态重定位的系统中,当执行指令“LOAD A 2000”时,操作数的实际地址是()。 A 1000 B 2000 C 3000 D 4000 15.虚拟内存的容量受到()的限制。

操作系统第三章 存储管理 期末测试复习题及答案

1、内存管理的主要目的是() A.方便用户 B.增加内存物理容量 C.方便用户和提高内存利用率 D.提高内存利用率 正确答案:C 2、关于内存管理,下列叙述中正确的是() A.内存保护的目的是限制内存的分配 B.若内存为M、用户数量为N,则分时系统中每个用户占用M/N的内存空间 C.在虚拟内存系统中,只要磁盘空间无限大,进程就能拥有任意大的地址空间 D.实现虚拟内存管理必须有相应的硬件的支持 正确答案:D 3、为保证进程空间不被非法访问,内存保护由()完成 A.操作系统独立完成 B.硬件机构独立完成 C.操作系统和硬件机构合作完成 D.操作系统或硬件机构独立完成 正确答案:C 4、为了进程在内存中改变了位置后仍能正确执行,则应采用( )技术。 A.静态重定位 B.动态重定位 C.编译或汇编 D.静态链接 正确答案:B

5、运行时重定位的缺点是()。 A.进程无法在内存中移动 B.进程必须连续存储 C.不利于代码共享 D.同一逻辑地址,可能需要多次转换为物理地址 正确答案:D 6、不适合多道程序设计的存储管理技术是() A.单一连续分配 B.固定分区分配 C.可变式分区分配 D.分页存储管理 正确答案:A 7、可变式分区存储管理中,实施拼接技术的目的是() A.集中空闲分区 B.增加物理内存 C.缩短访问时间 D.简化分配算法 正确答案:A 8、某动态分区存储管理系统,用户可用内存容量为55MB(初始为空闲)。若采用最 佳适配算法,分配和释放的顺序为:分配15MB,分配30MB,释放15MB,分配8MB,分配6MB,则内存中最大空闲分区的大小是() A.7MB B.9MB C.10MB D.11MB

第3章存储管理同步练习及答案

第3 章存储管理 一、单项选择题1.为避免主存中各种作业相互干扰,必须进行() A 重定位 B 地址映射 C 地址转换 D 存储保护 2.固定分区存储管理中,CPU 在执行作业的指令时,均为核对不等式()是否成立,若不成立,则产生地址越界中断事件,终止该指令的执行。 A界限地址w绝对地址w最大地址B下限地址w绝对地址V上限地址 C 基址寄存器内容w 绝对地址w 限长寄存器内容 D基址寄存器内容V绝对地址w限长寄存器内容 3?在请求分页系统中,LRU 算法是指()。 A 最早进入内存的页先淘汰 B 近期最长时间以来没被访问的页先淘汰 C 近期被访问次数最少的页先淘汰 D 以后再也不用的页面先淘汰4.虚拟存储器是()。 A 可以提高计算机运算速度的设备 B 容量扩大了主存的实际空间 C 通过SPOOLIN 技术实现的 D 可以容纳和超出主存容量的多个作业同时运行的一个地址空间5.下列存储管理方式中,相比而言,碎片最少,而且主存利用率最高的是()。 A 固定分区 B 可变分区 C 单用户连续存储管理 D 页式6.采用可变分区存储管理主存时,使用移动技术可以()。 A 加快作业执行速度 B 集中分散的空闲区 C 扩大主存容量 D 加快地址转换 7.在一个请求页式存储管理中,一个程序的页面走向为4,3,2,1,4,3,5, 4, 3, 2, 1, 5,并且采用LRU 算法。设分配给程序的存储块数M 分别为3 和4, 在访问总发生的缺页次数F为()。 A M=3,F=8;M=4,F=5 B M=3,F=10;M=4,F=8 C M=3,F=9;M=4,F=10 D M=3,F=7;M=4,F=6 8. 单道系统中经常采用的存储管理方式是()存储管理。 A 固定分区 B 单用户连续 C 可变分区 D 页式 9.请求页式管理中,缺页中断率与进程所分得的内存页面数、()和进程页面 流的走向等因素有关。 A 页表的地址 B 置换算法 C 外存管理算法 D 进程调度算法10.下列存储管理方式中, 一般采用静态重定位方式进行逻辑地址到物理地址转换的是()。 A 固定分区 B 段页式 C 可变分区 D 页式11.下列管理方式中, 能实现虚拟存储器的是()。 A 单用户连续方式 B 页式存储管理 C 固定分区 D 可变分区 12. 所谓LFU 页面置换算法,是指()。 A 驻留在内存中的页面随便挑选一页淘汰 B 将驻留在内存中时间最长的页页淘汰 C 将驻留在内存中最近最久未使用的一页淘汰 D 将驻留在内存中最近最不经常用的一页淘汰 13. 页式存储管理中,每当CPU 形成一个有效的地址时,则要查找页面。这一工作是由()实

第三章作业管理

第三章作业管理 3. 1 学习指导 操作系统为用户提供两个接口,一个是系统为用户提供的各种命令接口,用户利用这些操作命令来组织和控制作业的执行或管理计算机系统一个是程序接口,编程人员使用它们来请求操作系统服务。 按命令方式对作业控制方式的不同,可将命令接口分为联机命令接口和脱机命令接口。联机命令接口又称交互式命令接口,它由一组键盘操作命令组成。用户通过控制台或终端键入操作命令,向系统提出各种服务要求。在微机系统中,通常把键盘命令分为内部命令和外部命令两大类。脱机命令接口也称批处理命令接口,它是一组作业控制命令(或称作业控制语言)组成。脱机用户是指不能直接干预作业运行的用户,他们事先用相应的作业控制命令写成一份作业操作说明书,连同作业一起提交给系统,当系统调度到该作业时,由系统中的命令解释程序对作业说明书上的命令或作业控制语句逐条解释执行。 程序接口由一组系统调用组成。用户通过在程序中使用这些系统调用来请求操作系统提供的服务。所谓系统调用就是用户在程序中调用操作系统所提供的一些子功能。具体地讲,系统调用就是通过系统调用命令中断现行程序,而转去执行相应的子程序,以完成特定的系统功能。对操作系统而言,其所提供的系统调用命令条数、格式以及所执行的功能等都不尽相同。系统调用命令是为了扩充机器指令、增强系统功能、方便用户使用而提供的。因此,在一些计算机系统中,把系统调用命令称为广义指令。广义指令与机器指令在性质上是不同的,机器指令是用硬件线路直接实现的,而广义指令则是由操作系统提供的一个或多个子程序模块实现的。 用户使用操作系统的主要目的是作业处理。一个作业进入系统到运行结束,一般需经历收容、运行、完成三个阶段,与这三个阶段对应的作业处于后备、运行和完成三种状态。作业调度的主要功能是按照某种原则从后备作业队列中选取作业进入主存,并为作业做好运行前的准备工作和作业完成后的善后处理工作。常用的作业调度算法有:先来先服务、短作业优先、响应比高者优先、优先数优先等调度算法。衡量作业调度算法性能的主要指标有:作业的周转时间、作业的平均周转时间和平均带权周转时间。 本章的重点内容有:用户与操作系统之间的接口;作业的分类和作业控制;作业的状态及其转换;作业调度算法及周转时间、平均周转时间、平均带权周转时间的计算。 3. 2 学习自评 一、选择题 1.从控制角度看,用户作业分两大类,它们是。 A. 分时作业和实时作业 B. 单用户作业和多用户作业 C. 批处理作业和终端作业 D. 本地作业和远程作业 2.联机作业控制的特点是采用()的方式来进行作业控制。 A. 人机对话 B. 作业控制卡 C. 作业说明书 D. 命令文件 3.批处理作业的控制是由组成的。 A. 交互命令 B. 内部命令 C. 外部命令 D. 作业控制命令 4.用交互命令方式对作业的控制属。 A. 脱机作业控制 B. 联机作业控制 C. 既可对脱机作业进行控制,又可对联机作业进行控制 D. 不能对作业进行控制 5.作业调度的任务不是。

第3章 存储管理 练习题说课讲解

第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.分区分配表+空闲区表

第3章 存储管理习题

第3章存储管理习题 姓名: 学号: 一选择题 ( )1 可执行目标程序中的地址为(). A符号地址 B 相对地址 C 绝对地址 ( )2 在程序执行时进行地址映射称为(). A绝对装入 B 静态地址重定位 C 动态地址重定位 ( )3 在()存储管理中,必须采用动态地址重定位. A可变分区模式 B 单一分区模式 C 页模式 ( )4在下列内存管理方案中,不适合多道程序的是(). A单一连续模式 B 固定分区模式 C 可变分区模式 D 段页式存储管理模式 ( )5 下面关于虚存的说法正确的是(). A作业在运行前必须全部装入内存,并且在运行期间必须一直驻留在内存 B 作业在运行前不必全部装入内存,但在运行期间必须一直驻留在内存 C 作业在运行前必须全部装入内存,但在运行期间不必一直驻留在内存 D 作业在运行前不必全部装入内存,并且在运行期间不必一直驻留在内存 ( )6 以下()不可以提供虚存。 A、可变分区存储管理 B、页式存储管理 C、段式存储管理 D、段页式存储管理 ( )7、虚存的理论基础是()。 A、程序的局部性理论 B、代码的顺序执行 C、变量的连续访问 D、指令局部性 ( )8、虚存空间的最大容量()。 A、为内外存容量之和 B、由CPU与MMU间地址种总线宽度决定 C 、理论上是无限的 D、由程序大小决定 ( )9 内存利用率最高的内存管理模式是()。 A、页模式 B、段模式 C、段页式模式 D、可变分区 ( )10、以下()的进程逻辑地址空间是连续编址的。 A、页模式 B、段模式 C、段页式模式 D、稀疏页式 ( )11 下面程序设计技术和数据结构,对于请求分页的环境而言,()最好. A 栈 B hash表 C 纯代码 D 间接寻址 ()12、一般来说,分配的物理页越多,缺页中断率越低,但是以下()淘汰算法存在异常现象:对于某种页面流分配的内存越多缺页中断率反而越高。 A LRU B OPT C LFU D FIFO 二进程最多分配3个物理页(frame),并且已分配3个物理页面如下所示: page frame 装入时间最近访问时间访问位修改位 2 0 60 151 0 0 1 1 50 160 1 0 0 4 70 120 0 1 当进程访问第3页时,产生缺页中断,如果用FIFO算法,则淘汰的page是,如果用LRU算法,则淘汰的page是,如果用NRU算法(j近视LRU算法),则淘汰的page是。 三进程某时刻的页表如下,页面大小是1KB,虚地址1052和2221对应的页是否在内存?如 果在内存,物理地址是多少? 四一个源程序变成进程到执行要经过那几个阶段?在不同阶段中地址又有哪些变化? 五、对于简单分页系统 a 假设一个页表放在内存,如果一次内存访问用200ns,访问页面一次需要多少时间? b 如果采用TLB,并且85%的页面引用发生在TLB,内存的有效访问时间是多少?(假设访问TLB 占用0时间)

第3章存储器管理习题解答

第3章(大本)习题解答 一、填空 1.将作业相对地址空间的相对地址转换成内存中的绝对地址的过程称为 地址重定位 。 2.使用覆盖与对换技术的主要目的是 提高内存的利用率 。 3.存储管理中,对存储空间的浪费是以 内部碎片 和 外部碎片 两种形式表现出来的。 4.地址重定位可分为 静态重定位 和 动态重定位 两种。 5.在可变分区存储管理中采用最佳适应算法时,最好按 尺寸 法来组织空闲分区链表。 6.在分页式存储管理的页表里,主要应该包含 页号 和 块号 两个信息。 7.静态重定位在程序 装入 时进行,动态重定位在程序 执行 时进行。 8.在分页式存储管理中,如果页面置换算法选择不当,则会使系统出现 抖动 现象。 9.在请求分页式存储管理中采用先进先出(FIFO )页面淘汰算法时,增加分配给作业的块数时, 缺页中断 的次数有可能会增加。 10.在请求分页式存储管理中,页面淘汰是由于 缺页 引起的。 11.在段页式存储管理中,每个用户作业有一个 段 表,每段都有一个 页 表。 二、选择 1.虚拟存储器的最大容量是由 B 决定的。 A .内、外存容量之和 B .计算机系统的地址结构 C .作业的相对地址空间 D .作业的绝对地址空间 2.采用先进先出页面淘汰算法的系统中,一进程在内存占3块(开始为空),页面访问序列为1、2、3、4、1、2、5、1、2、3、4、5、6。运行时会产生 D 次缺页中断。 A .7 B .8 C .9 D .10 从图3-1中的“缺页计数”栏里可以看出应该选择D 。 1 2 3 4 1 2 5 1 2 3 4 5 6 √ √ √ √ √ √ √ √ √ 页面走向→ 3个内存块→ 缺页计数→ √ 图3-1 选择题2配图 3.系统出现“抖动”现象的主要原因是由于 A 引起的。 A .置换算法选择不当 B .交换的信息量太大 C .内存容量不足 D .采用页式存储管理策略 4.实现虚拟存储器的目的是 D 。 A .进行存储保护 B .允许程序浮动 C .允许程序移动 D .扩充主存容量 5.作业在执行中发生了缺页中断,那么经中断处理后,应返回执行 B 指令。 A .被中断的前一条 B .被中断的那条 C .被中断的后一条 D .程序第一条 6.在实行分页式存储管理系统中,分页是由 D 完成的。 A .程序员 B .用户 C .操作员 D .系统 7.下面的 A 页面淘汰算法有时会产生异常现象。

第3章存储管理答案

一、单项选择题 .存储管理地目地是. .方便用户.提高内存利用率 .方便用户和提高内存利用率.增加内存实际容量 解:存储管理地目地有两个,一是方便用户,二是提高内存利用率.本题答案为. .把作业空间中使用地逻辑地址变为内存中物理地址称为. .加载.重定位.物理化.逻辑化 解:在一般情况下,一个作业在装入时分配到地内存空间和它地地址空间是不一致地,因此,作业在上运行时,其所要访问地指令、数据地物理地址和逻辑地址是不同地.显然,如果在作业装入或执行时,不对有关地地址部分加以相应地修改,将会导致错误地结果.这种将作业地逻辑地址变为物理地址地过程称为地址重定位.本题答案为.个人收集整理勿做商业用途 .为了保证一个程序在主存中改变了存放位置之后仍能正确执行,则对主存空间应采用技术. .静态重定位.动态重定位.动态分配.静态分配 解:动态重定位采用动态运行装入方式,可以保证一个程序在主存中改变了存放位置后仍能正确执行.本题答案为.个人收集整理勿做商业用途 .在存储管理中采用交换与覆盖,目地是. .从物理上扩充内存、.实现主存共享 .节省存储空间.提高内存利用率 解:采用交换与覆盖技术可以提高内存利用率.本题答案为. .是指将作业不需要或暂时不需要地部分移到外存,让出内存空间以调入其他所需数据. .覆盖技术.交换技术.虚拟技术.物理扩充 解:本题答案为. .分区分配内存管理方式地主要保护措施是. .界地址保护.程序代码保护.数据保护.栈保护 解:在分区分配内存管理方式中,主要用上、下界寄存器保护分区,也称为界地址保护.本题答案为. .在固定分区分配中,每个分区地大小是. .相同. .随作业长度变化 .可以不同但预先固定.可以不同但根据作业长度固定 解:在固定分区分配中,每个分区地大小可以不相等,但事先必须确定,运行时不能改变.本题答案为. .在可变式分区存储管理中地拼接技术可以. .集中空闲分区.增加内存容量 .缩短访问周期.加速地址转换 解:拼接是指通过移动将多个分散地小分区合并成一个大分区.本题答案为. .在可变分区分配管理中,某一作业完成后,系统收回其内存空间,并与相邻区合并,为此修改空闲区说明表,造成空闲分区数减地情况是.个人收集整理勿做商业用途.无上邻空闲分区,也无下邻空闲分区 .有上邻空闲分区,但无下邻空闲分区 .有下邻空闲分区,但无上邻空闲分区 .有上邻空闲分区,也有下邻空闲分区

第3章 存储管理 练习题

3.1 计算机系统中的存储器 3.2 重定位 1.主存的地址空间常称为P39 (C ) A.逻辑地址空间 B.程序地址空间 C.物理地址空间 D.相对地址空间 2. 3. 4.支持程序浮动的地址转换机制是P40 (D ) A. 页式地址转换 B. 段式地址转换 C. 静态重定位 D. 动态重定位 5.要保证一个程序在主存中被改变了存放位置后仍能正确执行,则对主存空间应采用下列 哪个技术。(B )A.静态重定位B.动态重定位C.动态分配D.静态分配 6.动态重定位是在下列哪种情况下完成的(C ) A. 作业执行前集中一次B.作业执行过程中集中一次 C.作业执行过程中D.作业执行过程中由用户完成 7.采用静态重定位方式装入的作业,在作业执行过程中进行地址转换的是(B ) A. 由软件和硬件相互配合 B. 由软件独立 C. 只需要硬件 D. 不需要 3.3 单用户连续存储管理 8.在以下存贮管理方案中,不适用于多道程序设计系统的是(A ) A. 单用户连续分配 B. 固定式分区分配 C. 可变式分区分配 D. 页式存贮管理 9.MS-DOS的内存空间采用的存储管理方式是(D )A.固定分区B.可变分区C.页式D.单连续 3.4 固定分区存储管理 10.采用固定分区方式管理主存储器的最大缺点是(B )A.不利于存储保护B.主存空间利用率不高 C.要有硬件的地址转换机构D.分配算法复杂 11.下面的存储管理方案中,可以采用静态重定位的是(A )A.固定分区B.可变分区C.页式D.段式

12.每次分配时总是顺序查找空闲区表,找到第一个能满足作业长度要求的空闲区,此种分 配算法称为(A ) A. 最先适应分配算法 B. 最优适应分配算法 C. 最坏适应分配算法 D. 随机适应分配算法 13.在可变分区存储管理中,为了实现主存的空间分配,应设置(D )A.页表B.段表C.位示图D.空闲区表 14.在可变分区分配方案中,为了实现主存的空间分配,管理采用(D )A.页表B.段表 C.段表+页表D.分区分配表+空闲区表 15.在可变式分区存储管理中,某作业完成后要收回其主存空间,该空间可能与相邻空闲区 合并,在修改空闲区表时使空闲区数不变且空闲区起始地址不变的情况是(C )A.无上邻空闲区也无下邻空闲区B.有上邻空闲区但无下邻空闲区 C.无上邻空闲区但有下邻空闲区D.有上邻空闲区也有下邻空闲区 16.在一个可变分区存储管理中,最坏适应分配算法宜将空闲区表中的空闲区按下列次序排 列的是(D )A.地址递增B.地址递减C.长度递增D.长度递减 17.可变分区方式常用的主存分配算法有:最先适应、最优适应和最坏适应分配算法,其中, 按分区大小排序组织空闲区表的是(B ) A. 最先适应和最坏适应 B. 最优适应和最坏适应 C. 最先适应和最优适应 D. 最先适应、最优适应和最坏适应 3.6 页式虚拟存储管理 18.实现虚拟存储器的目的是(A )A.扩充主存容量B.扩充辅存容量C.实现存储保护D.加快存取速度 19.分页式存储管理时,每读写一个数据,要访问主存(B ) A. 1次 B. 2次 C. 3次 D. 4次 20.在存储管理的各方案中,可扩充主存容量的管理方案是(D ) A. 固定式分区分配 B. 可变式分区分配 C. 页式存储管理 D. 分页虚拟存储管理 21.页式存储管理中的页表是由(C ) A. 用户建立 B. 编译程序建立 C. 操作系统建立 D. 编辑程序建立

第3章 存储管理(3)答案

第3章 内存管理(3) 一、单项选择题 1.虚拟存储技术是 。 A .补充内存物理空问的技术 B .补充相对地址空间的技术 C .扩充外存空问的技术 D .扩充输入输出缓冲区的技术 解:虚拟存储技术并没有实际扩充内、外存,而是采用相关技术相对的扩充主存。本题答案为B 。 2.以下不属于虚拟内存特征的是 。 A .一次性 B .多次性 C .对换性 D .离散性 解:多次性、对换性和离散性都是虚拟内存的特征。本题答案为A 。 3.虚拟内存的基础是 。 A .局部性理论 B .代码的顺序执行 C .变量的连续访问 D .指令局部性 解:虚拟内存的基础是局部性理论,包括程序执行的局部性和存储空间访问的局部性。 本题答案为A 。 4.实施虚拟存储器管理的依据是程序的 。 A .局部性原 B .动态性原理 C .并发性原 D .一致性原理 解:同上题说明。本题答案为A 。 5.实现虚拟内存最主要的技术是 。 A .整体覆盖 B .整体对换 C .部分对换 D .多道程序设计 解:虚拟存储器具有多次性、对换性和虚拟性,而内、外存数据交换(对换)是基础。 本题答案为C 。 6.虚拟存储器是 。 A .可以容纳总和超过主存容量的多个作业同时运行的一个地址空间 B .可提高计算机运算速度的设备 C .容量扩大了的主存 D .实际上不存在的存储器 解:虚拟存储器的最大容量是由计算机的地址结构确定的,可以运行大于实际内存大 小的作业。本题答案为A 。 7.若处理器有32位地址,则它的虚拟地址空间为 字节。 A .2GB B .4GB C .100KB D .640KB 解:虚拟存储器的最大容量是由计算机的地址结构确定的,其虚拟地址空间=32 2 B=4GB 。 本题答案为B 。 8.设主存容量为1MB ,外存容量为400MB ,计算机系统的地址寄存器有24位,那么虚存的最大容量是 。 A .1M B B .401MB C .1MB+24 2 B D .24 2 B 解:虚拟存储器的最大容量是由计算机的地址结构确定的,其虚拟地址空间=24 2B 。 本题答案为D 。

相关主题
文本预览
相关文档 最新文档