操作系统的原理与应用答案 孔宪君 联系客服

发布时间 : 星期一 文章操作系统的原理与应用答案 孔宪君更新完毕开始阅读d5e24061a45177232f60a2d7

操作系统复习思考题答案

内存分配和回收、、内存保护、扩充内存、地址映射

2.为什么要引入动态重定位?如何实现?

动态重定位技术不同于静态重定位,进程在装入内存时不进行地址绑定,在指令执行期间CPU每次访问内存时进行地址重定位,这种重定位方法需要硬件的支持,系统中需设置一个地址变换机构。进程的指令和数据在内存中的物理地址在执行时通过地址变换机构确定,该技术在进程运行时允许移动和附加存储空间。

3.在多任务操作系统中,为什么必须采用动态重定位?

在多任务操作系统中,多个进程在内存中并发执行,进程的创建与撤消,多个进程之间频繁的上下文切换,其内存分配呈现离散性,动态性和随机性。而静态重定位仅适应于连续分配,不能满足多任务操作系统对内存需求的离散性,动态性和随机性等要求,因此多任务操作系统存储管理必须采用动态重定位。

4.伙伴系统有什么技术特点?伙伴系统如何对内存进行管理的?

伙伴系统是一种限制外碎片的产生的一种存储管理技术。该技术克服了固定分区和动态分区存储管理技术的缺陷,对半分裂或合并内存空间,选择合适的两个伙伴中的任何一个伙伴分配给进程。

在一个伙伴系统中,内存的用户可用空间为2。进程申请存储空间时,系统总是为其分配大小为2I的一个空闲分区,其中2S≤2I≤2U,2S是系统允许的最小分区尺寸。

伙伴系统的内存分配:如果进程申请的存储空间大小为K,且2I-1<K≤2I,则将整个2大小的分区分配给该进程;否则,该分区被分割成两个大小相等的伙伴分区,大小为2I-1;再判断K是否满足条件:2I-2<K≤2I-1,若满足条件,则将两个伙伴中的任何一个分配给该进程。否则,将其中一个伙伴又分成两个大小相等的伙伴分区;此过程一直继续进行,直到产生的分区满足条件I-J>S并2

I-J-1

I

U

<K≤2I-J,将2I-J大小的分区分配给该进程;当I-J≤S时,系统不再分割成两个大小相等的伙伴分区,将系统允许的最小分区2S分配给该进程。

伙伴系统的内存回收:当进程执行完毕,释放一个尺寸为2I的分区时,系统用下面的算法回收该分区。

⑴如果被回收空闲分区没有空闲伙伴分区,那么保留该分区为一个独立的空闲分区,否则执行⑵;

⑵合并回收分区及其伙伴分区,从而得到一个尺寸(2区,转移到⑴;

5.在系统中引入对换后可带来哪些好处?为实现对换,系统应具备哪几方面的功能?

好处:可以增加并发运行进程的数目,并且给用户提供适当的响应时间。不要求程序员给出程序段之间的覆盖结构,不影响程序结构。交换技术主要在进程

33

I+1

)更大的回收空闲分

操作系统复习思考题答案

之间进行。系统中引入对换技术后可以腾出足够的空间,把已具备运行条件的进程或进程所需要的程序和数据换入内存,从而提高内存利用率乃至系统吞吐量。 为实现进程对换,系统应具备对换空间管理、进程的换出及进程的换入等三方面的功能。

6.为实现分页存储管理,需要哪些硬件支持?

为实现分页存储管理,需要页表、地址转换机构(包括逻辑地址寄存器、物理地址寄存器、页表寄存器、快表)等硬件支持。

7.较详细地说明引入分段存储管理是为了满足用户哪几方面的需要。 推动存储管理方式从固定分区到动态分区,进而又发展到分页存储管理方式的主要动力在于满足内存利用率提高的系统管理需求。而分段存储管理的引入则主要是为了满足用户在以下五方面的需要:

①方便编程。通常,一个作业由若干个自然段构成。为此,用户希望能把自己的作业按照逻辑关系划分为若干个段,每个段都由自己的名字和长度。因而,规定每个段都从0开始编址,则访问的逻辑地址可由段名(段号)和段内偏移量(段内地址)决定。这样,用户程序在执行中便可用段名和段内地址进行访问。

②分段共享。通常,在实现程序和数据的共享时,都是以信息的逻辑单位为基础的。为了实现段的共享,应使内存管理功能与用户程序分段的组织方式相适应。

③分段保护。在多道程序环境下,为了防止其它程序对某程序在内存中的数据有意无意的破坏,必须采取保护措施。对内存中信息的保护,同样时对信息的逻辑单位进行保护。因此,采用分段的组织和管理方式,对于实现保护功能,将是更有效和方便的。

④动态链接。动态链接也要求以信息的逻辑单位即分段作为管理的单位。 ⑤动态增长。实际使用中,往往有些段特别是数据段会不断地增长,而事先又无法确切地知道数据段会增长到多大。这种动态增长的情况是其它存储管理方式都难于应付的,但分段存储管理方式却能较好地解决这一问题。

8.在具有快表的分页存储管理方式中,如何实现地址变换? 具有快表的地址变换过程如下:

⑴CPU给出有效地址后,由地址变换机构自动将页号送入快表,并将此页号与快表中的所有关键字(页号)进行比较,而且这种比较是同时进行的。若其中有与此页号相匹配的关键字,表示要访问页描述子在快表中。于是可直接读出该页所对应的帧号,则快速形成物理地址。这样就无需访问内存中的页表,由于快表的访问速度比内存的访问速度快得多,这样就可以大大减少访问内存的时间。

⑵如果快表中没有记录,即TLB脱靶,从页表中查找所需的页描述子中的帧号,形成物理地址,同时更新快表,把该页描述子及相邻的页描述子写入快表。

34

操作系统复习思考题答案

页号在快表(TLB)中被查找到的百分比称为命中率(h)。

9.试说明分段系统和分页系统的区别与联系?

⑴页帧是信息的物理单位,分页是系统管理的需要,以解决内存的外碎片问题;段是信息的逻辑单位,分段的目的是为了更好地满足用户的需要,但分段存储管理存在外碎片问题。

⑵页的大小是固定的,由系统硬件决定;段的长度是不固定的,大小由用户决定。

⑶分页系统进程的地址空间是一维的,即该地址空间是单一的线性地址空间,程序员只需利用一个标识符,即可表示一个地址;分段系统进程的地址空间是二维的,程序员在标识一个地址时,既需给出段名,又需给出段内偏移。

⑷分页对于用户是透明,它仅仅用于对内存的管理;分段则对用户是可见的。 ⑸分段存储管理可以利用段的共享来实现内存共享;分页存储管理较难实现内存共享。

10.虚拟存储器有哪些特征?其中最本质的特征是什么? 虚拟存储器具有四方面的特征: ⑴离散性,即采用离散分配方式;

⑵多次性,指进程被分成多次调入内存运行;

⑶对换性,指允许进程的段或页,在进程运行过程中换进和换出; ⑷虚拟性,指能够从逻辑上扩充内存容量。 其中,最本质的特征是离散性。

11.实现虚拟存储器需要哪些硬件支持?需要哪几个关键技术?

实现虚拟存储器需要三方面的硬件支持:⑴请求分页/段的页表或段表机制;⑵缺页/段中断机构;⑶地址变换机构。

实现虚拟存储器的关键技术包括请求调页/段功能、页面/分段置换功能等。

12.一个计算机系统采用了虚拟存储器,它给系统带来了那些好处?同时系统又必须付出那些代价?

所谓虚拟存储器就是将用户逻辑内存与物理内存分离,具有请求换入功能和置换功能,为用户提供了一个存储容量比实际内存大得多的存储器管理系统。虚拟存储器既方便了用户,以提高了内存的利用率和系统的吞吐量。

虚拟存储器的访问内存的速度会降低,如果使用不当可能会降低系统性能。 13.在请求分页系统中,如何扩充页描述子?扩充项的作用是什么? 在请求分页系统中,页描述子扩充如下:

① 页号和物理块号,用于实现用户作业虚拟地址空间页面到物理地址内存空间物理块的映射;

② 状态位,用于表征相应分页是否调入内存以便于程序访问;

35

操作系统复习思考题答案

③ 访问字段,用于记录相应分页在最近一段时间内被访问的次数或未被访问的时间间隔,以作为页面置换算法被淘汰页面选择依据;

④ 修改位,表征对应页面本次调入内存以来是否被修改过,以作为页面是否重写回外存的系统决策依据及页面置换算法被淘汰页面选择的依据;

⑤ 外存地址,表征对应分页在外存空间的物理盘块号,以便页面置换时调入该页使用。

14.为什么说分段系统比分页系统更易于实现信息的共享和保护?

程序往往具有逻辑自然段构成的特点,而分页系统是基于计算机系统硬件机构决定的物理块及其大小对应的分页概念来进行内存管理的。为此,同一逻辑意义相对完整的程序段或数据段不仅可能占用多个内存分页而需在页表中设置多个页表项,而且它们也可能被不合理地错落分散开来,对应于地址转换过程势必复杂化和增大系统开销,信息共享过程中必要的代码或数据访问所耗费的时空开销必然急剧加大,信息保护实施同样非常困难。对于分段系统来说,由于其是基于程序构成的逻辑信息单位即分段来进行内存管理的,同一逻辑意义相对完整的程序段或数据段不会被分割,而是在内存空间对应一个连续分段,故仅需在段表中设置一个段表项,所以对应的地址转换过程和信息保护要相对简单得多,信息共享过程中必要的代码或数据访问所耗费的时空开销也要少些。因此,分段系统比分页系统更易实现信息共享和保护。

15.在请求分页系统中,常采用哪几种页面置换算法?

在请求分页系统中,常采用以下页面置换算法:最佳置换算法、先进先出置换算法、最近最久未使用置换算法、Clock置换算法(又可细分为分简单Clock置换算法和改进Clock置换算法两种)、最少使用置换算法及页面缓冲算法。

16.使用伙伴系统管理1MB的内存分区:

⑴画图说明下面顺序的结果:进程1请求70KB;进程2请求35KB;进程3请求80KB;进程1结束;进程4请求60KB;进程2结束;进程4结束;进程3结束。

⑵给出进程2结束之后的二叉树表示。(参考教材147-148)

17. 在段页式存储管理中,进程的逻辑地址由三部分组成,即段号、页号和偏移量,其逻辑地址变换为物理地址的过程如图5-44所示,请说明三个关键词段号、页号和偏移量在地址变换过程中的作用?请描述段页式存储管理的地址变换过程?

36