《操作系统》练习题及答案(8)

2019-08-31 17:26

5.4 习题解答要点

5.4.1 选择最适合的答案

1.B 2.B 3.A 4. A 5.A 6.B 7. C 8.A 9.B 10.B 11.D 12.D 13.C 14.C 15.B 16.C 17.D 18.D 19.B 20.C 21.A 22.D 23.D 24.B 25.D 26.B 27.C 28.C 29.C 30.D 31.C 32.A 33.B 34.A 35.D 36.A 37.B 38.D 39.D 40.C 41.D 42.B 43.A 44.B 45.A 46.C 47.B 48.D 49.B 50.A 51.D 52.C 53.A 54.B 55.B 56.C 57.D 58.B 59.D 60.B

5.4.2 选择所有正确的答案

1.BCD 2.ABC 3.AE 4.ACD 4. AC (批处理是C,其它是A)

4.AC 5.ABCD 6.BCD 7.ABC 8. BD 9.ABCD 10.BCD 11.BCD 12.CD 13.AD

5.4.3 判断正误,错误的简要说明理由

1.错误

产生页面中断的次数与页面大小的关系不是绝对的,它还和访问页面的踪迹P、主存的容量M、以及淘汰算法有关。

2.错误

虚地址是作业的逻辑地址,只有经过地址转换机构后得到的物理地址才是程序执行时所要访问的内存地址。

1. 错误

交换技术与非连续存放技术相结合,才构成虚拟存储器。 4.正确 2. 错误

页面的调入、调出应在内存与文件区及对换区。调入可以从文件区和交换区,调出到交换区。

3. 错误

首先,最佳置换算法(OPT算法)不能实用,只可作为一种评价标准,因此目前很少在实际中使用。另外,改进型CLOCK算法能相对避免进程的抖动,并且效率较高。

4. 正确 5. 错误

虚存容量不仅受外存容量的限制,还受到CPU逻辑地址所能表示范围的限制。 9.正确 10.错误

静态页式管理不能实现虚存,这是因为静态页式管理要求进程或作业在执行前全部被装入内存,作业或进程的大小仍然受内存可用页面数的限制。

11.错误

采用可变分区,可以消除内部碎片,但极易产生外部碎片,可以通过紧缩办法消除外部碎片。

12. 正确 13. 错误

可采用虚拟存储器、覆盖、交换解决。 14.正确

5.4.4 简答题

1.动态链接就是指当程序运行到需要调用某一模块时,再去链接,对于未使用的模块就可以不必链接。采用段式内存分配方法可以实现这种技术。

2.静态重定位后的程序的代码已经发生了变化,由原来逻辑地址的程序已经变为物理地址的程序,按物理地址的方式运行,因此不能再进行移动。

动态重定位是在程序运行过程中由硬件进行地址变换,变换的结果存放在内存地址寄存

- 36 -

器中,程序代码并没有发生变化,仍然是逻辑地址的代码,按逻辑地址的方式运行,因此,在内存中移动程序代码之后,仅需要根据代码新的启始位置,重新设定基地址寄存器的值。

3.当需要覆盖的内容在以前程序的执行过程中修改过,并且在以后的执行中仍然需要,这时就必须采用交换的方式。

4.理论容量由逻辑地址位长决定。实际容量由逻辑地址位长以及内外存容量综合决定。 5.(1)逻辑地址有13位 (2)物理地址有15位

说明:解此题的关键是要知道在分页管理中,“页”和“块”是一样大小的,这样才知道物理存储器是32K。

6.页式虚存面向程序员的逻辑地址是1维的,而段式虚存面向程序员的逻辑地址是2维。

7.(1)下限是n (2)上限是p 说明:因为页面序列中有n个不同的页号,这n个页面可定是要通过页面失效中断装入内存的,故失效数的下限是n;因为页面序列的长度是p,即使每个页面都失效,其次数也不会超过p,故上限是p。

8.(1)可能已出现了抖动现象,应减少系统的进程数;

(2)系统比较正常,可考虑适当增加进程数以提高资源利用率; (3)CPU和磁盘的利用率都较低,必须增加并发进程数。

9.首先采用FIFO,当m=3时,缺页次数=9;m=4时,缺页次数=10。 采用LRU算法,当m=3时,缺页次数=10;m=4时,缺页次数=8。 结果说明:FIFO有Belady奇异现象,即不满足驻留集增大,缺页次数一定减小的规律;另在m=3时,LRU的缺页次数比FIFO要多,所以LRU算法并不总优于FIFO,还要看当前访问串的特点。

10.存储管理的主要研究内容是主存存储分配、地址再定位、存储保护和存储扩充。 11.实现虚拟存储器的物质基础是:一定容量的主存、足够的辅存和地址变换机构。 12.

(1) 通过分页处理,使程序可以不需要占用连续的内存空间;

(2) 通过实现虚拟存储器,解决程序大小不能超过内存的容量的问题。 13.

(1) 存储器访问具有时间和空间的“局部性”,因此快表的命中率一般可达70%到90%; (2) 页表是在系统执行过程中,每时每刻都需要访问的,因此,访问时间的微小缩短,其累计节约的时间却可以达到很大。

14.OS中存储管理的主要对象是内存储器的用户空间,以及作为内存用户空间的扩展和延伸的磁盘对换区(Unix)。内存的系统空间是存放OS内核的,不存在多道程序之间进行分配的问题,故不属存储管理的范围;在Unix中,磁盘对换区是用于进程映象对换的,因而从概念上讲是内存用户空间的扩充,故将它的管理也纳入存储管理之中。当然,不是所有的系统都有磁盘对换区,因而也不是所有系统的存储管理都有此管理对象。

15. 覆盖技术的基本思想是什么?

解 覆盖技术的基本思想是,若一个大的程序是由多个相对独立的程序模块组成,且有些模块是相互排斥的,即执行甲就不会执行乙,则在这种情况下,就没有必要将该程序的所有模块装入内存,而是将那些二者(或多者)执行时取其一的模块处理成“覆盖”,让它们共享内存的一个“覆盖区”。这样就可大大节省内存空间,达到用小内存运行大程序的目的。

5.4.5 解答题

1.总结出的区别如下表所示:

分页 单一连续逻辑地址空间 页是信息的物理单位 分段 二维逻辑地址空间 段是信息的逻辑单位 - 37 -

页是面向系统的 页内的信息逻辑上可能不完整的 页的大小固定 由系统划分 对用户透明 以页面为单位分配空间 存在内零头 不需要紧凑技术 段是面向用户的 段内的信息在逻辑上是完整的 段长度可变增长 用户可见 便于动态链接和存储保护 修改和共享 以段大小为单位分配的空间 存在外零头 需采用紧凑技术

提出分页管理的目的是为了提高内存空间的利用率;提出分段管理的目的除了也可以提高内存空间的利用率(相对分区管理而言)外,主要是为了更好地实现程序的共享和动态链接,并方便用户编程。

2. (1)因为页表放在内存,故取一条指令(或一个操作数)须访问两次内存,所以需0.6us×2 = 1.2us的时间。

(2)这里假定访问快表的时间可以忽略不计,命中快表时取数只要一次访存,故此时的平均存取周期为

0.6us×0.75+1.2us×(1-0.75)=0.75us

说明:解此题的关键是要知道访问快表的时间可以忽略不计和平均存取周期的概念。 3.根本区别就在于,虚存管理允许部分装入和部分对换,而实存管理不允许这样做。所谓“部分装入”,指的是一道应用程序不是全部装入内存以后才开始执行而是只装入其一部分(甚至一点都不装)就开始运行,然后在运行的过程中根据需要逐步地装入其余部分;“部分对换”,指的是当内存已满而又有新的将“部分”需要装入时,要把已在内存的某一“部分”换出去,以腾出空间存放新来者。部分装入和部分对换的结果是可以用小的内存运行大的程序。实存管理则不同,它所要求的是整体装入。

4.(1)虚存的运行背景是用小内存运行大程序。这里的“大程序”是指比整个内存用户空间还要大的程序,它可以是一道程序,也可以是多道程序之和。

(2)虚存的可行性基础是程序运行的局部性原理。

(3)实现虚存的主要技术是部分装入、部分对换、局部覆盖、动态重定位。

(4)从原理上讲,虚存空间就是CPU逻辑地址所给出的空间,例如,逻辑地址是25位,则虚存空间就是225=32M;但实际的虚拟存储器的容量还要受辅存和内存空间之和的限制,即虚存空间不能超过这两个物理空间之和。

5.通过逐个演算,获得下表所示的结果。 Optimal LRU FIFO 过程分得的页面数 1 2 3 4 5 6 7 20 15 11 8 7 7 7 20 17 15 10 8 7 7 20 18 16 14 12 9 7 说明:每一个页面第一次进入内存也算缺页。 由上表可见,当进程分得的页面数在2~5之间时,Optimal缺页数最少,LRU次之,FIFO最多。大量统计证明LRU算法是实用算法中性能最好的。

6.内存的有效存取时间EAT(Efficent Access Time)也叫平均存取时间AAT(Average Access Time),其计算公式如下:

- 38 -

EAT=命中快表时的存取时间×快表命中率+命中内存时的存取时间×内存命中率+页面失效时的存取时间×页面实效率

将题中的已知条件代入可得

EAT=1us×80%+2us×10%+(5000us+2us)×10%

=0.8us+0.2us+500.2us =501.2us

说明:解此题除了要了解“有效存取时间”的计算公式外,还应了解在命中快表、命中内存和页面失效三种情况下存取时间的计算方法。特别是,当页面失效时,除了页面传送时间,还应加上2次访问内存的时间,因为页面失效的前提是不命中快表。

7.设可接受的最大缺页率为p,则有

1us×0.7+2us×(1-0.7-p)+0.4p×8ms+0.6p×20ms=2us 即 0.7+0.6-2p+3200p+1200p=2 15198p=0.7 p=0.000046 8.

(1)节约内存 在许多情况下,每次要运行的模块可能是不相同的,但由于事先无法知道本次要运行哪些模块,故只能是将所有可能要运行到的模块,全部链接在一起,是每次执行时的装入全部的模块。显然这是低效的。因为装入的某些模块在运行过程中,根本就不运行。比较典型的例子是错误处理模块,如果程序在整个运行过程中,都不出现错误,便不会用到该模块。动态连接的方式就可以解决这个问题。

(2)便于软件版本的修改和更新

在采用装入时动态链接方式时,要修改或更新各个目标模块,是件非常容易的事,但对于经静态链接以装配在一起的装入模块,如果要修改或更新其中的某个目标模块时,则要求重新打开装入模块,这不仅是低效的,而且对于普通用户是不可能的。

(3)便于实现目标模块共享和构建程序。

若采用装入时动态链接方式,OS能够将一个目标模块链接到几个应用程序中去,即实现多个应用程序对该模块的共享。然而,采用静态链接方式时每个应用模块都必须含有该目标模块的拷贝,则无法实现共享。

9.

(1) LRU

第2页面:20+8*3 第4页面:20 +8*3 第5页面:20 +8*3 第2页面:8+1 第7页面:20 +8*3 第6页面:20+8*3 第4页面:20+ 8*3 第8页面:20+8*3

因此总的时间是(20+8*3)*7+(8+1)

(2) OPT

第2页面:20+8*3 第4页面:20 +8*3 第5页面:20 +8*3 第2页面:8+1 第7页面:20 +8*3 第6页面:20+8*3 第4页面:8+1 第8页面:8+1

因此总的时间是 (20+8*3)*5 +(8+2)*3

- 39 -

第六章 设备管理

习题

一、选择最合适的答案

1.在下面的I/O控制方式中,需要CPU干预最少的方式是( )。 (A)程序I/O方式

(B)中断驱动I/O控制方式

(C)直接存储器访问DMA控制方式 (D)I/O通道控制方式

2.某操作系统中,采用中断驱动I/O控制方式,设中断时,CPU用1ms来处理中断请求,其它时间CPU完全用来计算,若系统时钟中断频率为100HZ,则,CPU的利用率为( )。 (A)60% (B)70% (C)80% (D)90% 3.下列哪一条不是磁盘设备的特点( )。 (A)传输速率较高,以数据块为传输单位 (B)一段时间内只允许一个用户(进程)访问 (C)I/O控制方式常采用DMA方式 (D)可以寻址,随机地读/写任意数据块

4.利用通道实现了( )之间数据的快速传输。

(A)CPU和外设 (B)内存和CPU (C)内存和外设 (D)外设和外设

5.假脱机技术中,对打印机的操作实际上是用对磁盘存储实现的,用以替代打印机的部分是指( )。

(A)共享设备 (B)独占设备 (C)虚拟设备 (D)物理设备

6.设从磁盘将一块数据传送到缓冲区所用时间为80μs,将缓冲区中数据传送到用户区所用时间为40μs,CPU处理数据所用时间为30μs,则处理该数据,采用单缓冲传送某磁盘数据,系统所用总时间为( )。

(A)120μs (B)110μs (C)150μs (D)70μs

7.对于速率为9.6KB/s的数据通信来说,如果说设置一个具有8位的缓冲寄存器,则CPU中断时间和响应时间大约分别为( )。

(A)0.8ms,0.8ms (B)8ms,1ms (C)0.8ms,0.1ms (D)0.1ms,0.1ms

8.在调试程序时,可以先把所有输出送屏幕显示而不必正式输出到打印设备,其运用了( )。

(A)SPOOLing技术 (B)I/O重定向 (C)共享技术 (D)缓冲技术

9.设备驱动程序是系统提供的一种通道程序,它专门用于在请求I/O的进程与设备控制器之间传输信息。下面的选项中不是设备驱动程序功能的是( )。 (A)检查用户I/O请求的合法性

(B)及时响应由控制器或通道发来的中断请求 (C)控制I/O设备的I/O操作

(D)了解I/O设备的状态,传送有关参数,设置设备的工作方式

10.下列关于通道、设备、设备控制器三者之间的关系叙述中正确的是( )。 (A)设备控制器和通道可以分别控制设备 (B)设备控制器控制通道和设备一起工作

- 40 -


《操作系统》练习题及答案(8).doc 将本文的Word文档下载到电脑 下载失败或者文档不完整,请联系客服人员解决!

下一篇:30小冰熊(详案)

相关阅读
本类排行
× 注册会员免费下载(下载后可以自由复制和排版)

马上注册会员

注:下载文档有可能“只有目录或者内容不全”等情况,请下载之前注意辨别,如果您已付费且无法下载或内容有问题,请联系我们协助你处理。
微信: QQ: