操作系统应用题与参考答案

更新时间:2024-07-09 23:55:02 阅读量: 综合文库 文档下载

说明:文章内容仅供预览,部分内容可能不全。下载后的文档,内容与下面显示的完全一致。下载之前请确认下面内容是否您想要的,是否完整无缺。

《操作系统教程》(第三版)CH4应用题参考答案

CH1 第1章

一、填空

1.计算机由 硬件 系统和 软件 系统两个部分组成,它们构成了一个完整的计算机系统。 2.按功能划分,软件可分为 系统 软件和 应用 软件两种。

4.操作系统的基本功能是 处理机(包含作业) 管理、 存储 管理、 设备 管理和 文件 管理。 5.在分时和批处理系统结合的操作系统中引入“前台”和“后台”作业的概念,其目的是 改善系统功能,提高处理能力 。

6.分时系统的主要特征为 多路性 、 交互性 、 独立性 和 及时性 。 7.实时系统与分时以及批处理系统的主要区别是 高及时性 和 高可靠性 。

8.若一个操作系统具有很强的交互性,可同时供多个用户使用,则是 分时 操作系统。

9.如果一个操作系统在用户提交作业后,不提供交互能力,只追求计算机资源的利用率、大吞吐量和作业流程的自动化,则属于 批处理 操作系统。

10.采用多道程序设计技术,能充分发挥 CPU 和 外部设备 并行工作的能力。 二、选择

1.操作系统是一种 B 。

A.通用软件

B.系统软件

C.应用软件

D.软件包

2.操作系统是对 C 进行管理的软件。

A系统软件

B.系统硬件

C.计算机资源 D.应用程序

3.操作系统中采用多道程序设计技术,以提高CPU和外部设备的 A 。

A.利用率

B.可靠性

C.稳定性

D.兼容性

4.计算机系统中配置操作系统的目的是提高计算机的 B 和方便用户使用。

A.速度

B.利用率

C.灵活性

D.兼容性

5. C 操作系统允许多个用户在其终端上同时交互地使用计算机。

A.批处理

B.实时

C.分时

D.多道批处理

6.如果分时系统的时间片一定,那么 D ,响应时间越长。

A.用户数越少 B.内存越少

三、问答

C.内存越多

D.用户数越多

1.什么是“多道程序设计”技术?它对操作系统的形成起到什么作用?

答:所谓“多道程序设计”技术,即是通过软件的手段,允许在计算机内存中同时存放几道相互独立的作业程序,让它们对系统中的资源进行“共享”和“竞争”,以使系统中的各种资源尽可能地满负荷工作,从而提高整个计算机系统的使用效率。基于这种考虑,计算机科学家开始把CPU、存储器、外部设备以及各种软件都视为计算机系统的“资源”,并逐步设计出一种软件来管理这些资源,不仅使它们能够得到合理地使用,而且还要高效地使用。具有这种功能的软件就是“操作系统”。所以,“多道程序设计”的出现,加快了操作系统的诞生。

1

《操作系统教程》(第三版)CH4应用题参考答案

2.怎样理解“虚拟机”的概念?

答:拿操作系统来说,它是在裸机上加载的第一层软件,是对计算机硬件系统功能的首次扩充。从用户的角度看,计算机配置了操作系统后,由于操作系统隐蔽了硬件的复杂细节,用户会感到机器使用起来更方便、容易了。这样,通过操作系统的作用使展现在用户面前的是一台功能经过扩展了的机器。这台“机器”不是硬件搭建成的,现实生活中并不存在具有这种功能的真实机器,它只是用户的一种感觉而已。所以,就把这样的机器称为“虚拟机”。

3.对于分时系统,怎样理解“从宏观上看,多个用户同时工作,共享系统的资源;从微观上看,各终端程序是轮流运行一个时间片”?

答:在分时系统中,系统把CPU时间划分成许多时间片,每个终端用户可以使用由一个时间片规定的CPU时间,多个用户终端就轮流地使用CPU。这样的效果是每个终端都开始了自己的工作,得到了及时的响应。也就是说,“从宏观上看,多个用户同时工作,共享系统的资源”。但实际上,CPU在每一时刻只为一个终端服务,即“从微观上看,各终端程序是轮流运行一个时间片”。

第2章

一、填空

1.进程在执行过程中有3种基本状态,它们是 运行 态、 就绪 态和 阻塞 态。 2.系统中一个进程由 程序 、 数据集合 和 进程控制块(PCB) 三部分组成。 3.在多道程序设计系统中,进程是一个 动 态概念,程序是一个 静 态概念。

4.在一个单CPU系统中,若有5个用户进程。假设当前系统为用户态,则处于就绪状态的用户进程最多有 4 个,最少有 0 个。

注意,题目里给出的是假设当前系统为用户态,这表明现在有一个进程处于运行状态,因此最多有4个进程处于就绪态。也可能除一个在运行外,其他4个都处于阻塞。这时,处于就绪的进程一个也没有。 5.总的来说,进程调度有两种方式,即 不可剥夺 方式和 剥夺 方式。 6.进程调度程序具体负责 中央处理机(CPU)的分配。

7.为了使系统的各种资源得到均衡使用,进行作业调度时,应该注意 CPU忙碌 作业和 I/O忙碌 作业的搭配。

8.所谓系统调用,就是用户程序要调用 操作系统 提供的一些子功能。

9.作业被系统接纳后到运行完毕,一般还需要经历 后备 、 运行 和 完成 三个阶段。

10.假定一个系统中的所有作业同时到达,那么使作业平均周转时间为最小的作业调度算法是 短作业优先 调度算法。

2

《操作系统教程》(第三版)CH4应用题参考答案

二、选择

1.在进程管理中,当 C 时,进程从阻塞状态变为就绪状态。

A.进程被调度程序选中 C.等待的事件出现

B.进程等待某一事件发生 D.时间片到

2.在分时系统中,一个进程用完给它的时间片后,其状态变为 A 。

A.就绪

B.等待

C.运行

D.由用户设定

3.下面对进程的描述中,错误的是 D 。

A.进程是动态的概念 C.进程具有生命周期

B.进程的执行需要CPU D.进程是指令的集合

4.操作系统通过 B 对进程进行管理。

A.JCB

B.PCB

C.DCT

D.FCB

5.一个进程被唤醒,意味着该进程 D 。 A.重新占有CPU

B.优先级变为最大 C.移至等待队列之首

D.变为就绪状态

6.由各作业JCB形成的队列称为 C 。

A.就绪作业队列 C.后备作业队列

B.阻塞作业队列 D.运行作业队列

7.既考虑作业等待时间,又考虑作业执行时间的作业调度算法是 A 。

A.响应比高者优先 C.优先级调度

B.短作业优先 D.先来先服务

8.作业调度程序从处于 D 状态的队列中选取适当的作业投入运行。

A.就绪

B.提交

C.等待

D.后备

9. A 是指从作业提交系统到作业完成的时间间隔。

A.周转时间

B.响应时间

C.等待时间

D.运行时间

10.计算机系统在执行 C 时,会自动从目态变换到管态。

A.P操作

三、问答

B.V操作

C.系统调用

D.I/O指令

1.在多道程序设计系统中,如何理解“内存中的多个程序的执行过程交织在一起,大家都在走走停停”这样一个现象?

答:在多道程序设计系统中,内存中存放多个程序,它们以交替的方式使用CPU。因此,从宏观上看,这些程序都开始了自己的工作。但由于CPU只有一个,在任何时刻CPU只能执行一个进程程序。所以这些进程程序的执行过程是交织在一起的。也就是说,从微观上看,每一个进程一会儿在向前走,一会儿又停步不前,处于一种“走走停停”的状态之中。

2.什么是“原语”、“特权指令”、“系统调用命令”和“访管指令”?它们之间有无一定的联系? 答:特权指令和访管指令都是CPU指令系统中的指令,只是前者是一些只能在管态下执行的指令,后者是一条只能在目态下执行的指令。原语和系统调用命令都是操作系统中的功能程序,只是前者执行时不能

3

《操作系统教程》(第三版)CH4应用题参考答案

被其他程序所打断,后者没有这个要求。操作系统中有些系统调用命令是以原语的形式出现的,例如创建进程就是一条原语式的系统调用命令。但并不是所有系统调用命令都是原语。因为如果那样的话,整个系统的并发性就不可能得到充分地发挥。

3.操作系统是如何处理源程序中出现的系统调用命令的?

答:编译程序总是把源程序中的系统调用命令改写成为一条访管指令和相应的参数。这样在程序实际被执行时,就通过访管指令进入操作系统,达到调用操作系统功能子程序的目的。 4.系统调用与一般的过程调用有什么区别?

答:系统调用是指在用户程序中调用操作系统提供的功能子程序;一般的过程调用是指在一个程序中调用另一个程序。因此它们之间有如下三点区别。

(1)一般的过程调用,调用者与被调用者都运行在相同的CPU状态,即或都处于目态(用户程序调用用户程序),或都处于管态(系统程序调用系统程序);但发生系统调用时,发出调用命令的调用者运行在目态,而被调用的对象则运行在管态,即调用者与被调用者运行在不同的CPU状态。

(2)一般的过程调用,是直接通过转移指令转向被调用的程序;但发生系统调用时,只能通过访管指令提供的一个统一的入口,由目态进入管态,经分析后,才转向相应的操作系统命令处理程序。

(3)一般的过程调用,在被调用者执行完后,就径直返回断点继续执行;但系统调用可能会导致进程状态的变化,从而引起系统重新分配处理机。因此,系统调用处理结束后,不一定是返回调用者断点处继续执行。

5.试述创建进程原语的主要功能。 答:创建进程原语的主要功能有以下三项。 (1)为新建进程申请一个PCB。

(2)将创建者(即父进程)提供的新建进程的信息填入PCB中。

(3)将新建进程设置为就绪状态,并按照所采用的调度算法,把PCB排入就绪队列中。

6.处于阻塞状态的一个进程,它所等待的事件发生时,就把它的状态由阻塞改变为就绪,让它到就绪队列里排队,为什么不直接将它投入运行呢?

答:只要是涉及管理,就应该有管理的规则,没有规则就不成方圆。如果处于阻塞状态的一个进程,在它所等待的事件发生时就径直将它投入运行(也就是把CPU从当前运行进程的手中抢夺过来),那么系统就无法控制对CPU这种资源的管理和使用,进而也就失去了设置操作系统的作用。所以,阻塞状态的进程在它所等待的事件发生时,必须先进入就绪队列,然后再去考虑它使用CPU的问题。 7.作业调度与进程调度有什么区别?

答:作业调度和进程调度(即CPU调度)都涉及到CPU的分配。但作业调度只是选择参加CPU竞争的作业,它并不具体分配CPU。而进程调度是在作业调度完成选择后的基础上,把CPU真正分配给某一个具体的进程使用。

8.系统中的各种进程队列都是由进程的PCB链接而成的。当一个进程的状态从阻塞变为就绪状态时,它的PCB从哪个队列移到哪个队列?它所对应的程序也要跟着移来移去吗?为什么?

答:当一个进程的状态从阻塞变为就绪时,它的PCB就从原先在的阻塞队列移到就绪队列里。在把进程的PCB从这个队列移到另一个队列时,只是移动进程的PCB,进程所对应的程序是不动的。这是因为在进程的PCB里,总是记录有它的程序的断点信息。知道了断点的信息,就能够知道程序当前应该从哪里开始往下执行了。这正是保护现场所起的作用。

4

《操作系统教程》(第三版)CH4应用题参考答案

9.为什么说响应比高者优先作业调度算法是对先来先服务以及短作业优先这两种调度算法的折中? 答: 先来先服务的作业调度算法,重点考虑的是作业在后备作业队列里的等待时间,因此对短作业不利;短作业优先的作业调度算法,重点考虑的是作业所需的CPU时间(当然,这个时间是用户自己估计的),因此对长作业不利。“响应比高者优先”作业调度算法,总是在需要调度时,考虑作业已经等待的时间和所需运行时间之比,即:该作业已等待时间 / 该作业所需CPU时间

不难看出,这个比值的分母是一个不变的量。随着时间的推移,一个作业的“已等待时间”会不断发生变化,也就是分子在不断地变化。显然,短作业比较容易获得较高的响应比。这是因为它的分母较小,只要稍加等待,整个比值就会很快上升。另一方面,长作业的分母虽然很大,但随着它等待时间的增加,比值也会逐渐上升,从而获得较高的响应比。根据这种分析,可见“响应比高者优先”的作业调度算法,既照顾到了短作业的利益,也照顾到了长作业的利益,是对先来先服务以及短作业优先这两种调度算法的一种折中。

10.短作业优先调度算法总能得到最小的平均周转时间吗?为什么?

答:短作业优先调度算法只有在所有作业同时到达后备作业队列时,才能得到最小的平均周转时间。如果各作业不是同时到达,这个结论是不成立的。可以用反例说明,例如,教材上举有如下例子:考虑有5个作业A到E,运行时间分别是2、4、1、1、1;到达时间分别是0、0、3、3、3。按照短作业优先的原则,最初只有A和B可以参与选择,因为其他3个还没有到达。于是,运行顺序应该是A、B、C、D、E。它们每个的周转时间分别是2、6、4、5、6,平均周转时间是4.6。但如果按照顺序B、C、D、E、A来调度,它们每一个的周转时间成为9、4、2、3、4,平均周转时间是4.4。结果比短作业优先调度算法好。之所以会这样,就是因为这5个作业并没有同时到达。

四、计算 1.有三个作业:

作 业 1 2 3

分别采用先来先服务和短作业优先作业调度算法。试问它们的平均周转时间各是什么?你是否还可以给出一种更好的调度算法,使其平均周转时间优于这两种调度算法?

到达时间 0.0 0.4 1.0 所需CPU时间 8 4 1 解:(1)采用先来先服务作业调度算法时的实施过程如下。 作 业 1 2 3 到达时间 0.0 0.4 1.0 所需CPU时间 8 4 1 开始时间 0.0 8.0 12.0 完成时间 8.0 12.0 13.0 周转时间 8.0 11.6 12.0 5

《操作系统教程》(第三版)CH4应用题参考答案

这时,作业的调度顺序是1→2→3。其平均周转时间为:

(8 + 11.6 + 12)/ 3 = 10.53

(2)采用短作业优先作业调度算法时的实施过程如下。 作 业 1 3 2

这里要注意,在作业1运行完毕进行作业调度时,作业2和3都已经到达。由于是实行短作业优先作业调度算法,因此先调度作业3运行,最后调度作业2运行。所以,这时的作业调度顺序是1→3→2。其平均周转时间为:

(8 + 8 + 12.6)/ 3 = 9.53

(3)还可以有更好的作业调度算法,使其平均周转时间优于这两种调度算法。例如,如果知道在作业1后面会来两个短作业,那么作业1到达后,先不投入运行。而是等所有作业到齐后,再按照短作业优先作业调度算法进行调度,具体实施过程如下。 作 业 3 2 1

这时的作业调度顺序是3→2→1。其平均周转时间为:

(1 + 5.6 + 14)/ 3 = 6.87

2.设有一组作业,它们的到达时间和所需CPU时间如下所示。 作业号 1 2 3 4

到达时间 9:00 9:40 9:50 10:10 所需CPU时间 70分钟 30分钟 10分钟 5分钟 到达时间 1.0 0.4 0.0 所需CPU时间 1 4 8 开始时间 1.0 2.0 6.0 完成时间 2.0 6.0 14.0 周转时间 1.0 5.6 14.0 到达时间 0.0 1.0 0.4 所需CPU时间 8 1 4 开始时间 0.0 8.0 9.0 完成时间 8.0 9.0 13.0 周转时间 8.0 8.0 12.6 6

《操作系统教程》(第三版)CH4应用题参考答案

分别采用先来先服务和短作业优先作业调度算法。试问它们的调度顺序、作业周转时间以及平均周转时间各是什么?

解:(1)采用先来先服务作业调度算法时的实施过程如下。 作业号 1 2 3 4

这时,作业的调度顺序是1→2→3→4。其平均周转时间为:

(70 + 60 + 60 + 45)/ 4 = 58.75

(2)采用短作业优先作业调度算法时的实施过程如下。 作业号 1 4 3 2

这时,作业的调度顺序是1→4→3→2。其平均周转时间为:

(70 + 5 + 35 + 75)/ 4 = 46.25

3.某系统有三个作业: 作业号 1 2 3

系统确定在它们全部到达后,开始采用响应比高者优先调度算法,并忽略系统调度时间。试问对它们的调度顺序是什么?各自的周转时间是多少?

解:三个作业是在9.5时全部到达的。这时它们各自的响应比如下:

作业1的响应比 =(9.5 – 8.8)/ 1.5 = 0.46

7 到达时间 8.8 9.0 9.5 所需CPU时间 1.5 0.4 1.0 到达时间 9:00 10:10 9:50 9:40 所需CPU时间 70分钟 5分钟 10分钟 30分钟 开始时间 9:00 10:10 10:15 10:25 完成时间 10:10 10:15 10:25 10:55 周转时间 70分钟 5分钟 35分钟 75分钟 到达时间 9:00 9:40 9:50 10:10 所需CPU时间 70分钟 30分钟 10分钟 5分钟 开始时间 9:00 10:10 10:40 10:50 完成时间 10:10 10:40 10:50 10:55 周转时间 70分钟 60分钟 60分钟 45分钟 《操作系统教程》(第三版)CH4应用题参考答案

作业2的响应比 =(9.5 – 9.0)/ 0.4 = 1.25 作业3的响应比 =(9.5 – 9.5)/ 1.0 = 0

因此,最先应该调度作业2运行,因为它的响应比最高。它运行了0.4后完成,这时的时间是9.9。再计算作业1和3此时的响应比:

作业1的响应比 =(9.9 – 8.8)/ 1.5 = 0.73 作业3的响应比 =(9.9 – 9.5)/ 1.0 = 0.40

因此,第二个应该调度作业1运行,因为它的响应比最高。它运行了1.5后完成,这时的时间是11.4。第三个调度的是作业3,它运行了1.0后完成,这时的时间是12.4。整个实施过程如下。 作业号 2 1 3

作业的调度顺序是2→1→3。各自的周转时间为:作业1为0.9;作业2为2.6;作业3为2.9

到达时间 9.0 8.8 9.5 所需CPU时间 0.4 1.5 1.0 开始时间 9.5 9.9 11.4 完成时间 9.9 11.4 12.4 周转时间 0.9 2.6 2.9 8

《操作系统教程》(第三版)CH4应用题参考答案

CH2 第3章

一、填空

1.将作业相对地址空间的相对地址转换成内存中的绝对地址的过程称为 地址重定位 。 2.使用覆盖与对换技术的主要目的是 提高内存的利用率 。

3.存储管理中,对存储空间的浪费是以 内部碎片 和 外部碎片 两种形式表现出来的。 4.地址重定位可分为 静态重定位 和 动态重定位 两种。

5.在可变分区存储管理中采用最佳适应算法时,最好按 尺寸 法来组织空闲分区链表。 6.在分页式存储管理的页表里,主要应该包含 页号 和 块号 两个信息。 7.静态重定位在程序 装入 时进行,动态重定位在程序 执行 时进行。

8.在分页式存储管理中,如果页面置换算法选择不当,则会使系统出现 抖动 现象。

9.在请求分页式存储管理中采用先进先出(FIFO)页面淘汰算法时,增加分配给作业的块数时, 缺页中断 的次数有可能会增加。

10.在请求分页式存储管理中,页面淘汰是由于 缺页 引起的。 二、选择

1.虚拟存储器的最大容量是由 B 决定的。

A.内、外存容量之和 C.作业的相对地址空间

B.计算机系统的地址结构 D.作业的绝对地址空间

2.采用先进先出页面淘汰算法的系统中,一进程在内存占3块(开始为空),页面访问序列为1、2、3、4、1、2、5、1、2、3、4、5 、6。运行时会产生 2 3 4 5 6 3 次缺页中断。4 1 2 5 1 页面走向→ 1 2 D 2 9 5 5 5 3 4 10 4 6 B.8 1 2 3 4 1 C.D.3个内存块→ 1 2 3 4 1 2 2 2 5 3 3 4 从图3-8中的“缺页计数”栏里可以看出应该选择D。 A.7

1 2 3 4 1 1 1 2 5 5 3 缺页计数→ √ √ √ √ √ √ √ √ √ √

图3-8 选择题2配图

3.系统出现“抖动”现象的主要原因是由于 A 引起的。

A.置换算法选择不当 C.内存容量不足

B.交换的信息量太大

D.采用页式存储管理策略

4.实现虚拟存储器的目的是 D 。

A.进行存储保护 C.允许程序移动

B.允许程序浮动 D.扩充主存容量

5.作业在执行中发生了缺页中断,那么经中断处理后,应返回执行 B 指令。

A.被中断的前一条 C.被中断的后一条

B.被中断的那条 D.程序第一条

6.在实行分页式存储管理系统中,分页是由 D 完成的。

A.程序员

B.用户

C.操作员 9

D.系统

《操作系统教程》(第三版)CH4应用题参考答案

7.下面的 A 页面淘汰算法有时会产生异常现象。

A.先进先出

B.最近最少使用

C.最不经常使用

页号 0 块号 2 1 D.最佳

8.在一个分页式存储管理系统中,页表的内容为:

若页的大小为4KB,则地址转换机构将相对地址0转换成的物理地址是 A 。

A.8192 C.2048

B.4096 D.1024

1 注意,相对地址0肯定是第0页的第0个字节。查页表可知第0页存放在内存的第2块。现在块的尺寸是4KB,因此第2块的起始地址为8192。故相对地址0所对应的绝对地址(即物理地址)是8192。 9.下面所列的存储管理方案中, A 实行的不是动态重定位。

A.固定分区

B.可变分区

C.分页式

D.请求分页式

10.在下面所列的诸因素中,不对缺页中断次数产生影响的是 C 。

A.内存分块的尺寸 C.作业等待的时间

三、问答

1.什么是内部碎片?什么是外部碎片?各种存储管理中都可能产生何种碎片?

答:所谓“内部碎片”,是指系统已经分配给用户使用、用户自己没有用到的那部分存储空间;所谓“外部碎片”,是指系统无法把它分配出去供用户使用的那部分存储空间。对于教材而言,单一连续区存储管理、固定分区存储管理、分页式存储管理和请求页式存储管理都会出现内部碎片。只是前两种存储管理造成的内部碎片比较大,浪费较为严重;后两种页式存储管理,平均来说每个作业都会出现半页的内部碎片。教材中,只有可变分区存储管理会产生外部碎片。 2.叙述静态重定位与动态重定位的区别。

答:静态重定位是一种通过软件来完成的地址重定位技术。它在程序装入内存时,完成对程序指令中地址的调整。因此,程序经过静态重定位以后,在内存中就不能移动了。如果要移动,就必须重新进行地址重定位。

动态重定位是一种通过硬件支持完成的地址重定位技术。作业程序被原封不动地装入内存。只有到执行某条指令时,硬件地址转换机构才对它里面的地址进行转换。正因为如此,实行动态重定位的系统,作业程序可以在内存里移动。也就是说,作业程序在内存中是可浮动的。

3.一个虚拟地址结构用24个二进制位表示。其中12个二进制位表示页面尺寸。试问这种虚拟地址空间总共多少页?每页的尺寸是多少?

答:如下图所示,由于虚拟地址中是用12个二进制位表示页面尺寸(即页内位移),所以虚拟地址空间中表示页号的也是12个二进制位。这样,这种虚拟地址空间总共有: 212 = 4096(页)

B.程序编制的质量 D.分配给作业的内存块数

每页的尺寸是:23 22 21 20 19 18 17 16 15 14 13 12 11 10 9 8 7 6 5 4 3 2 1 0 212 = 4096 = 4K(字节) 页号 虚拟地址 页内位移

4.什么叫虚拟存储器?怎样确定虚拟存储器的容量?

10

《操作系统教程》(第三版)CH4应用题参考答案

答:虚拟存储器实际是一种存储扩充技术。它把作业程序存放在辅助存储器里,运行时只装入程序的一部分。遇到不在内存的程序时,再把所需要的部分装入。这样在内存和辅存之间调入、调出的做法,使用户的作业地址空间无需顾及内存的大小。给用户造成的印象是,无论程序有多大,它在这个系统上都可以运行。这种以辅助存储器作为后援的虚幻存储器,就称为虚拟存储器。虚拟存储器的大小是由系统的地址结构确定的。

5.为什么请求分页式存储管理能够向用户提供虚拟存储器?

答:请求分页式存储管理的基本思想是:操作系统按照存储块的尺寸,把用户作业地址空间划分成页,全部存放在磁盘上。作业运行时,只先装入若干页。运行过程中遇到不在内存的页时,操作系统就把它从磁盘调入内存。这样一来,用户的作业地址空间无需顾及内存的大小。这与虚拟存储器的思想是完全吻合的。所以,请求分页式存储管理能够向用户提供虚拟存储器。 6.在请求分页式存储管理中,为什么既有页表,又有快表?

答:在分页式或请求页式存储管理中,通常是利用内存储器构成页表的。当CPU执行到某条指令、要对内存中的某一地址访问时,因为这个地址是相对地址,所以先要根据这个地址所在的页号去查页表(访问一次内存),然后才能由所形成的绝对地址去真正执行指令(第二次访问内存)。可见,由于页表在内存,降低了CPU的访问速度。

为了提高相对地址到绝对地址的变换速度,人们想到用一组快速寄存器来代替页表。这时查页表是以并行的方式进行,立即就能输出与该页号匹配的块号,这样做无疑比内存式的页表要快得多。但是,快速寄存器的价格昂贵,由它来组成整个页表是不可取的。考虑到程序运行时具有局部性,因此实际系统中总是一方面采用内存页表、另一方面用极少几个快速寄存器组成快表来共同完成地址的变换工作。这时的地址变换过程,如教材中的图3-22所示。 7.试述缺页中断与页面淘汰之间的关系。

答:在请求页式存储管理中,当根据虚拟地址查页表而发现所要访问的页不在内存时,就会产生缺页中断。系统响应中断后,就由操作系统到辅存把所需要的页读入内存。这时,内存可能有空闲的块,也可能没有。只有当内存中没有空闲块时,才会出现将内存现有页面淘汰出去的问题,即要进行页面淘汰。所以,缺页中断和页面淘汰之间的关系是:页面淘汰一定是由缺页中断所引起;但缺页中断则不一定引起页面淘汰。 8.试述缺页中断与一般中断的区别。

答:在计算机系统中,由于某些事件的出现,打断了当前程序的运行,而使CPU去处理出现的事件,这称为“中断”。通常,计算机的硬件结构都是在执行完一条指令后,去检查有无中断事件发生的。如果有,那么就暂停当前程序的运行,而让CPU去执行操作系统的中断处理程序,这叫“中断响应”。CPU在处理完中断后,如果不需要对CPU重新进行分配,那么就返回被中断进程的程序继续运行;如果需要进行CPU的重新分配,那么操作系统就会去调度新进程。

由上面的讲述可以看出,缺页中断与一般中断的区别如下。

(1)两种中断产生的时刻不同:缺页中断是在执行一条指令中间时产生的中断,并立即转去处理;而一般中断则是在一条指令执行完毕后,当硬件中断装置发现有中断请求时才去响应和处理。

(2)处理完毕后的归属不同:缺页中断处理完后,仍返回到原指令去重新执行,因为那条指令并未执行;而一般中断则是或返回到被中断进程的下一条指令去执行,因为上一条指令已经执行完了,或重新调度,去执行别的进程程序。

9.怎样理解把相对地址划分成数对:(页号,页内位移)的过程对于用户是“透明”的?

11

《操作系统教程》(第三版)CH4应用题参考答案

答:在操作系统中,所谓“透明”,即指用户不知道的意思。对于分页式存储管理来说,用户向系统提供的相对地址空间,是一个一维的连续空间。系统接受了这个作业后,在内部把这个相对地址空间划分成若干页。由于这种划分对于用户来说是根本不知道的,所以说把相对地址划分成数对:(页号,页内位移)的过程对于用户是“透明”的。

10.做一个综述,说明从单一连续区存储管理到固定分区存储管理,到可变分区存储管理,到分页式存储管理,再到请求分页式存储管理,每一种存储管理的出现,都是在原有基础上的发展和提高。 答:教材共介绍了5种存储管理策略,它们适用于不同的场合,如图3-9所示。图中,在单一连续分区存储管理与固定分区存储管理之间画了一条线,那表明位于线以上的存储管理策略只适用于单道程序设计,以下的适用于多道程序设计;在可变分区存储管理与分页式存储管理之间画了一条线,那表明位于线以上的存储管理策略都要求为进入内存的作业分配一个连续的存储区,以下的存储管理策略打破了连续性的要求;在分页式存储管理与请求页式存储管理之间画了一条线,那表明位于线以上的存储管理策

请求页式存储管理 部分 图3-9 各种存储管理策略的适用场合

单道 单一连续分区存储管理 固定分区存储管理 多道 连续 可变分区存储管理 分页式存储管理 不连续 全部 略都要求使作业程序全部进入内存,而以下的存储管理策略打破了全部的要求,只要部分装入内存就可以了。

由此可见,每一种存储管理的出现,都是在原有存储管理基础上的一次发展和提高。它们从简单到复杂,从不完善到逐渐完善。

四、计算

1.在可变分区存储管理中,按地址法组织当前的空闲分区,其大小分别为:10KB,4KB,20KB,18KB,7KB,9KB,12KB和15KB。现在依次有3个存储请求为:12KB,10KB,9KB。试问使用最先适应算法时的分配情形如何?那么最佳适应、最坏适应呢? 解:我们用表来说明实行各种分配算法时的情形。 (1)最先适应算法 请求队列 初始 12K 10K 9K

(2)最佳适应算法 请求队列 初始

10K 4K 20K 最佳适应算法 18K 12

7K 9K 12K 15K 10K 10K 0 0 4K 4K 4K 4K 20K 8K 8K 8K 最先适应算法 18K 18K 18K 9K 7K 7K 7K 7K 9K 9K 9K 9K 12K 12K 12K 12K 15K 15K 15K 15K 《操作系统教程》(第三版)CH4应用题参考答案

12K 10K 9K

10K 0 0 4K 4K 4K 20K 20K 20K 18K 18K 18K 7K 7K 7K 9K 9K 0 0 0 0 15K 15K 15K (3)最坏适应算法 请求队列 初始 12K 10K 9K

可见,分配算法不同,选择的分配对象也不一样。

2.系统内存被划分成8块,每块4KB。某作业的虚拟地址空间共划分成16个页面。当前在内存的页与内存块的对应关系如下表所示,未列出的页表示不在内存。 页 号 0 1 2 3

试指出对应于下列虚拟地址的绝对地址: (a)20

(b)4100 (c)8300

块 号 2 1 6 0 页 号 4 5 9 11 块 号 4 3 5 7 10K 10K 10K 10K 4K 4K 4K 4K 20K 8K 8K 8K 最坏适应算法 18K 18K 8K 8K 7K 7K 7K 7K 9K 9K 9K 9K 12K 12K 12K 12K 15K 15K 15K 6K 解:(a)虚拟地址20对应的页号是0,页内位移是20。用0去查页表,知道第0页现在存放在内存的第2块。由于每块的长度是4KB,所以第2块的起始地址为8192。因此,虚拟地址20所对应的绝对地址是: 8192+20=8212

(b)虚拟地址4100对应的页号是: 4100/4096=1(“/”是整除运算符) 对应的页内位移是:

4100@96=4(“%”是求余运算符)

用1去查页表,知道第1页现在存放在内存的第1块。第1块的起始地址为4096。因此,虚拟地址4100所对应的绝对地址是: 4096+4=4100

13

《操作系统教程》(第三版)CH4应用题参考答案

(c)虚拟地址8300对应的页号是: 8300/4096=2(“/”是整除运算符) 对应的页内位移是:

8300@96=108(“%”是求余运算符)

用2去查页表,知道第2页现在存放在内存的第6块。第6块的起始地址为 6×4K=24576

6 页面走向→ 1 2 3 4 2 1 5 6 2 1 2 3 7 6 3 2 1 2 3 因此,虚拟地址8300所对应的绝对地址是 2个内存块→ 1 2 3 4 2 1 5 6 2 1 2 3 7 6 3 2 1 2 3 6 24576+108=24684 1 2 3 4 2 1 5 6 2 1 2 3 7 6 3 2 1 2 3 缺页计数→ √ √ √ √ √ √ √ √ √ √ √ √ √ √ √ √ √ 3.某请求分页式存储管理系统,接收一个共7 √页的作业。作业运行时的页面走向如下: 1,2,3,4,2,1,5,6,2,1,2,3,7,6,3,2,1,2,3,6 页面走向→ 1 2 3 4 2 1 5 6 2 1 2 3 7 6 3 2 1 2 3 6 若采用最近最久未用(LRU)页面淘汰算法,作业在得到2块和4块内存空间时,各会产生出多少次缺页 6 页面走向→ 1 2 3 4 2 1 5 6 2 1 2 3 7 6 3 2 1 2 3 中断?如果采用先进先出(FIFO)页面淘汰算法时,结果又如何? 6 6 1 1 1 2 3 3 1 2 2 3 3 4 4 2 2 1 1 5 5 6 6 2 2 1 1 2 3 3 7 7 3 3 2 2 6 4个内存块个内存块→ 2 LRU )页面淘汰算法,作业在得到1 3 2 4 3 2 4 1 2 1 5 2 6 6 3 7 6 2 3 1 2 5 6 2 1 22 3 3 2 1 2 3 3 7 6 解:(1)采用最近最久未用(块内存空间时所产生的缺页中断次数为1 1 3 4 2 1 5 5 6 1 2 2 7 6 6 6 1 缺页计数→ √ √ √ 4√ √ √ √ √ √ √ √ √ √ √ √10 √ √ √ (b)所示。18次,如图3-10(a)所示;在得到块内存空间时所产生的缺页中断次数为次,如图3-10

缺页计数→ √ √ √ √ √ (a) 2√ 块时的FIFO √ √√ √ (b) 4块时的LUR 页面走向→ 1 2 3 4 2 1 5 6 2 1 2 3 7 6 3 2 1 2 3 6

(a) 2块时的LRU 4个内存块→ 1 2 2 2 3 4 5 6 6 2 1 3 3 7 6 6 2 2 (2)采用先进先出(FIFO)页面淘汰算法,作业在得到2块内存空间时所产生的缺页中断次数为18次,

1 2 3 4 图4 3-10 4 5 LRU6 2 时的情形1 1 3 7 6 6 2 1 1 3 3 1 2 3 3 3 4 5 6 2 2 1 3 7 7 6 2 2 1 1 如图3-11(a)所示;在得到4块内存空间时所产生的缺页中断次数为14次,如图3-11(b)所示。

缺页计数→ √ √ √ √ √ √ √ √ √ √ √ √ √ (b) 4块时的FIFO 1 1 1 2 3 4 5 5 6 2 1 1 3 7 7 6 6

图3-11 FIFO时的情形

关于先进先出(FIFO)页面淘汰算法,在给予作业更多的内存块时,缺页中断次数有可能上升,这是所谓的异常现象。但要注意,并不是在任何情况下都会出现异常。是否出现异常,取决于页面的走向。本题所给的页面走向,在FIFO页面淘汰算法下,并没有引起异常:2块时缺页中断次数为18次,4块时缺页中断次数为14次。

14

《操作系统教程》(第三版)CH4应用题参考答案

CH3 第4章

一、填空

1.磁带、磁盘这样的存储设备都是以 块 为单位与内存进行信息交换的。

2.根据用户作业发出的磁盘I/O请求的柱面位置,来决定请求执行顺序的调度,被称为 移臂 调度。 3.DMA控制器在获得总线控制权的情况下能直接与 内存储器 进行数据交换,无需CPU介入。 4.在DMA方式下,设备与内存储器之间进行的是 成批 数据传输。 5.通道程序是由 通道 执行的。

6.通道是一个独立与CPU的、专门用来管理 输入/输出操作 的处理机。

7.缓冲的实现有两种方法:一种是采用专门硬件寄存器的硬件缓冲,一种是在内存储器里开辟一个区域,作为专用的I/O缓冲区,称为 软件缓冲 。

8.设备管理中使用的数据结构有系统设备表(SDT)和 设备控制块(DCB) 。 9.基于设备的分配特性,可以把系统中的设备分为独享、共享和 虚拟 三种类型。 10.引起中断发生的事件称为 中断源 二、选择题

1.在对磁盘进行读/写操作时,下面给出的参数中, C 是不正确的。

A. 柱面号

B.磁头号

C.盘面号

D.扇区号

2.在设备管理中,是由 B 完成真正的I/O操作的。

A.输入/输出管理程序 C.中断处理程序

B.设备驱动程序 D.设备启动程序

3.在下列磁盘调度算法中,只有 D 考虑I/O请求到达的先后次序。

A.最短查找时间优先调度算法 C.单向扫描调度算法

B.电梯调度算法 D.先来先服务调度算法

4.下面所列的内容里, C 不是DMA方式传输数据的特点。

A.直接与内存交换数据 C.与CPU并行工作

B.成批交换数据 D.快速传输数据

5.在CPU启动通道后,由 A 执行通道程序,完成CPU所交给的I/O任务。

A. 通道

B.CPU

C.设备

D.设备控制器

6.利用SPOOL技术实现虚拟设备的目的是 A 。

A.把独享的设备变为可以共享 C.便于对独享设备的管理

7.通常,缓冲池位于 C 中。

A.设备控制器 B.辅助存储器

8. B 是直接存取的存储设备。

A.磁带

B.磁盘

C.打印机

D.键盘显示终端

C.主存储器

D.寄存器

B.便于独享设备的分配

D.便于独享设备与CPU并行工作

9.SPOOLING系统提高了 A 的利用率。

A.独享设备

B.辅助存储器

C.共享设备

D.主存储器

15

《操作系统教程》(第三版)CH4应用题参考答案

为212K、417K、112K和426K,(1)分别用first-fit、best-fit和worst-fit算法将它们装入到内存的哪个分区?(2) 哪个算法能最有效利用内存? 答:按题意地址从小到大进行分区如图所示。

(1) 1)first-fit 212KB选中分区2,这时分区2还剩288KB。417KB选中分区5,这时分区5还剩183KB。

112KB选中分区2,这时分区2还剩176KB。426KB无分区能满足,应该等待。

2)best-fit 212KB选中分区4,这时分区4还剩88KB。417KB选中分区2,这时分区2还剩83KB。112KB选中分区3,这时分区3还剩88KB。426KB选中分区5,这时分区5还剩174KB。

3)worst-fit 212KB选中分区5,这时分区5还剩388KB。417KB选中分区2,这时分区2还剩83KB。112KB选中分区5,这时分区5还剩176KB。426KB无分区能满足,应该等待。 (2) 对于该作业序列,best-fit算法能最有效利用内存

6 一个32位地址的计算机系统使用二级页表,虚地址被分为9位顶级页表,11位二级页表和偏移。试问:页面长度是多少?虚地址空间共有多少个页面?

答:由于32-9-11=12,所以,页面大小为4KB,页面的个数为220 个。

7 一进程以下列次序访问5个页:A、B、C、D、A、B、E、A、B、C、D、E;假定使用FIFO替换算法,在内存有3个和4个空闲页框的情况下,分别给出页面替换次数。

答:内存有3个和4个空闲页框的情况下,页面替换次数为9次和10次。出现了Belady现象,增加分给作业的内存块数,反使缺页中断率上升。

8 某计算机有缓存、内存、辅存来实现虚拟存储器。如果数据在缓存中,访问它需要Ans;如果在内存但不在缓存,需要Bns将其装入缓存,然后才能访问;如果不在内存而在辅存,需要Cns将其读入内存,然后,用Bns再读入缓存,然后才能访问。假设缓存命中率为(n-1)/n,内存命中率为(m-1)/m,则数据平均访问时间是多少? 答:

数据在缓存中的比率为:(n-1)/n

数据在内存中的比率为:(1-(n-1)/n)×(m-1)/m=(m-1)/nm 数据在辅存中的比率为:(1-(n-1)/n)×(1-(m-1)/m)=1/nm

故数据平均访问时间是=((n-1)/n)×A+((1-(n-1)/n)×(m-1)/m)×(A+B)+( (1-(n-1)/n)×(1-(m-1)/m))×

21

分区号 分区长 1 100KB 2 500KB 3 200KB 4 300KB 5 600KB 《操作系统教程》(第三版)CH4应用题参考答案

(A+B+C)=A+B/n+C/nm

9 某计算机有cache、内存、辅存来实现虚拟存储器。如果数据在cache中,访问它需要20ns;如果在内存但不在cache,需要60ns将其装入缓存,然后才能访问;如果不在内存而在辅存,需要12ms将其读入内存,然后,用60ns再读入cache,然后才能访问。假设cache命中率为0.9,内存命中率为0.6,则数据平均访问时间是多少(ns)? 答:506ns。

10 有一个分页系统,其页表存放在主存里,(1)如果对内存的一次存取要1.2微秒,试问实现一次页面访问的存取需花多少时间?(2)若系统配置了联想存储器,命中率为80×%,假定页表表目在联想存储器的查找时间忽略不计,试问实现一次页面访问的存取时间是多少? 答:(1)2.4微秒 (2) 0.8×1.2+0.2×2.4=0.76+0.48=1.24微秒

11给定段表如下:

段 号 0 1 2 3 4 段 首 址 219 2300 90 1327 1952 段 长 600 14 100 580 96 给定地址为段号和位移:1)[0,430]、2)[3,400]、3)[1,1]、4)[2,500]、5)[4,42],试求出对应的内存物理地址。

答:1)449 2)1727 3)2301 4)越界 5)1994

12 某计算机系统提供24位虚存空间,主存为218B,采用分页式虚拟存储管理,页面尺寸为1KB。假定

用户程序产生了虚拟地址11123456(八进制),而该页面分得块号为100(八进制),说明该系统如何产生相应的物理地址及写出物理地址。

答:虚拟地址11123456(八进制)转化为二进制为: 001 001 001 010 011 100 101 110

其中前面为页号,而后10位为位移:001 001 001 010 01--------1 100 101 110。由于主存大小为218B,页面尺寸为1KB,所以,主存共有256块。所以,块号为100(八进制)是合法地址,于是,物理地址为100与位移1 100 101 110并接,得到:八进制物理地址100 1 100 101 110。

13主存中有两个空间区如图所示,

22

《操作系统教程》(第三版)CH4应用题参考答案

0K

15K 125K

100K 50K 现有作业序列依次为:Job1要求30K;Job2要求70K;Job3要求50K;使用首次适应、最坏适应和最佳适应算法处理这个作业序列,试问哪种算法可以满足分配?为什么?

答:首次适应、最坏适应算法处理这个作业序列可以满足分配,最佳适应算法不行。因为后者会分割出无法使用的碎片,浪费内存,从而,不能满足所有作业的内存需求。

14 设有一页式存储管理系统,向用户提供的逻辑地址空间最大为16页,每页2048字节,内存总共

有8个存储块。试问逻辑地址至少应为多少位?内存空间有多大? 答:逻辑地址211 ×24 ,故为15位。内存大小为23×211=214B=16KB。

15 在一分页存储管理系统中,逻辑地址长度为16位,页面大小为4096字节,现有一逻辑地址为

2F6AH,且第0、1、2页依次存在物理块10、12、14号中,问相应的物理地址为多少? 答:因为逻辑地址长度为16位,而页面大小为4096字节,所以,前面的4位表示页号。把2F6AH转换成二进制为:0010 1111 0110 1010,可知页号为2。故放在14号物理块中,写成十六进制为:EF6AH。

16 有矩阵:VAR A:ARRAY[1‥100,1‥100] OF integer;元素按行存储。在一虚存系统中,采

用LRU淘汰算法,一个进程有3页内存空间,每页可以存放200个整数。其中第1页存放程序,且假定程序已在内存。 程序A:

FOR i:=1 TO 100 DO FOR j:=1 TO 100 DO A[i,j]:=0; 程序B:

FOR j:=1 TO 100 DO FOR i:=1 TO 100 DO A[i,j]:=0;

分别就程序A和B的执行进程计算缺页次数。

答:题中100×100=10000个数据,每页可以存放200个整数,故一共存放在50个页面中。由于元素按行存储,第1行、第2行放在第1页,?,第99行、第100行放在第50页。故对于程序A,缺页中断为50次。对于程序B,缺页中断为5000次。

23

《操作系统教程》(第三版)CH4应用题参考答案

17 一台机器有48位虚地址和32位物理地址,若页长为8KB,问页表共有多少个页表项?如果设计一

个反置页表,则有多少个页表项?

答:因为页长8KB占用13住,所以,页表项有235个。反置页表项有219个。

18 在虚拟页式存储管理中,为解决抖动问题,可采用工作集模型以决定分给进程的物理块数,有如

下页面访问序列:

窗口尺寸△=9,试求t1、t2时刻的工作集。

答:t1时刻的工作集为:{1,2,3,6,7,8,9}。t时刻的工作集为:{3,4}。

19 有一个分页虚存系统,测得CPU和磁盘的利用率如下,试指出每种情况下的存在问题和可采取的

措施:(1)CPU利用率为13%,磁盘利用率为97% (2)CPU利用率为87%,磁盘利用率为3% (3)CPU利用率为13%,磁盘利用率为3% 。

答:(1)系统可能出现抖动,可把暂停部分进程运行。(2)系统运行正常,可增加运行进程数以进一步提高资源利用率。(3)处理器和设备和利用率均很低,可增加并发运行的进程数。

20 在一个分页虚存系统中,用户编程空间32个页,页长1KB,主存为16KB。如果用户程序有10

页长,若己知虚页0、1、2、3,已分到页框8、7、4、10 ,试把虚地址0AC5H和1AC5H转换成对应的物理地址。

答:虚地址0AC5H对应的物理地址为:12C5H。而执行虚地址1AC5H会发现页表中尚未有分配的页框而发生缺页中断,由系统另行分配页框。

21 某计算机有4个页框,每页的装入时间、最后访问时间、访问位R、修改位D如下所示(时间用时

钟点数表示):

page loaded last ref R D 0 126 279 0 0 1 230 260 1 0 2 120 272 1 1 3 160 280 1 1 分别用FIFO、LRU、二次机会算法分别淘汰哪一页? 答:(1)FIFO 淘汰page2。 (2)LRU 淘汰page1。 (3) 二次机会 淘汰page0。

24

…… 2 5 1 6 3 3 7 8 9 1 6 2 3 4 3 4 3 4 4 4 3 4 4 3 …… △ t1 △ t2 《操作系统教程》(第三版)CH4应用题参考答案

22 考虑下面的程序:

for (i=0;i<20;i++)

for(j=0;j<10;j++) a[i]:=a[i]×j

试举例说明该程序的空间局部性和时间局部性。

答:当数组元素a[0],a[1],?,a[19]存放在一个页面中时,其空间局部性和时间局部性较好,也就是说,在很短时间内执行都挂行循环乘法程序,而且数组元素分布在紧邻连续的存储单元中。当数组元素存放在不同页面中时,其时间局部性虽相同,但空间局部性较差,因为处理的数组元素分布在不连续的存储单元中。

23 一个有快表的请页式虚存系统,设内存访问周期为1微秒,内外存传送一个页面的平均时间为5毫秒。

如果快表命中率为75%,缺页中断率为10%。忽略快表访问时间,试求内存的有效存取时间。 答:快表命中率为75%,缺页中断率为10%,所以,内存命中率为15%。故内存的有效存取时间=1×75%+2×15%+(5000+2)×10%=501.25微秒。

24 假设某虚存的用户空间为1024KB,页面大小为4KB,内存空间为512KB。已知用户的虚页10、11、

12、13页分得内存页框号为62、78、25、36,求出虚地址0BEBC(16进制)的实地址(16进制)是多少? 答:虚地址0BEBC(16进制)的二进制形式为:0000 1011 1110 1011 1100。由于页面大小为4KB,故其中后12位是位移,所以,虚地址的页号为:11。查页表分得内存对应页框号为:78。已知内存空间为512KB,故内存共有128个页框,78是合法物理块。把78化为16进制是4E,虚地址0BEBC(16进制)的实地址(16进制)是:4EEBC。

25 某请求分页存储系统使用一级页表,假设页表全部放在主存内,: 1)若一次访问主存花120ns,那么,访问一个数据的时间是多少?

2)若增加一个快表,在命中或失误时需有20ns开销,如果快表命中率为80%,则访问一个数据的时间

为多少?

答:1) 120ns×2=240ns。

2) (120+20)×80%+(120+120+20)×20%=174ns。

26 设某系统中作业J1,J2,J3占用主存的情况如图。今有一个长度为20k的作业J4要装入主存,当采用

可变分区分配方式时,请回答:

(1) J4装入前的主存已分配表和未分配表的内容。

(2) 写出装入J4时的工作流程,并说明你采用什么分配算法。

0 10k 18k 30k 40k

OS J1 J2 25

《操作系统教程》(第三版)CH4应用题参考答案

54k 70k

J3 答:(1)主存已分配表共有三项,由作业J1、J2、J3占用,长度依次为:10k、30k和54k。未分配表共有三项:空闲区1、空闲区2和空闲区3,长度依次为18k、40k和70k。

(2)作业J4装入时,采用直接分配,搜索未分配表,空闲区1不能满足。所以,要继续搜索未分配表,空闲区2可以满足J4的装入要求。 27 考虑下列的段表:

段号 始址 段长 0 200 500 1 890 30 2 120 100 3 1250 600 4 1800 88

对下面的逻辑地址,求物理地址,如越界请指明。1) <0,480> 2)<1,25> 3)<1,14> 4)<2,200> 5) <3,500> 6)<4,100>。

答:1)680 2)915 3)904 4)越界 5)1750 6) 越界。

28 请页式存储管理中,进程访问地址序列为:10,11,104,170,73,305,180,240,244,445,467,366。试问1)如果

页面大小为100,给出页面访问序列。2)进程若分得3个页框,采用FIFO和LRU替换算法,求缺页中断率?

答:1) 页面访问序列为1,1,2,2,1,4,2,3,3,5,5,4。

2)FIFO为5次,缺页中断率为5/12=41.6%。LRU为6次,缺页中断率为6/12=50%。 LRU反比FIFO缺页中断率高。

29 假设计算机有2M内存,其中,操作系统占用512K,每个用户程序也使用512K内存。如果所有程序

都有70%的I/O等待时间,那么,再增加1M内存,吞吐率增加多少?

答:由题意可知,内存中可以存放3个用户进程,而CPU的利用率为:1-(70%)3 =1-(0.7)3 =65.7%。再增加1M内存,可增加2个用户进程,这时CPU的利用率为:1-(70%)5 =1-(0.7)5=83.2%。故再增加1M内存,吞吐率增加了:83.2%÷65.7%-100%=27%。

30 一个计算机系统有足够的内存空间存放4道程序,这些程序有一半时间在空闲等待I/O操作。问多大

比例的CPU时间被浪费掉了? 答:(50%)4 =(1/2)4=1/16。

31 如果一条指令平均需1微秒,处理一个缺页中断另需n微秒,给出当缺页中断每k条指令发生一次时,指令的实际执行时间。 答:(1+n/k)微秒。

32 一台计算机的内存空间为1024个页面,页表放在内存中,从页表中读一个字的开销是500ns。为了减

少开销,使用了有32个字的快表,查找速度为100ns。要把平均开销降到200ns需要的快表命中率是多少?

答:设快表命中率是x,则内存命中率为1-x。于是:500(1-x)+100x=200,解方程得x=75%。

26

本文来源:https://www.bwwdw.com/article/a1v.html

Top