操作系统第三章练习及答案

  1. 1、下载文档前请自行甄别文档内容的完整性,平台不提供额外的编辑、内容补充、找答案等附加服务。
  2. 2、"仅部分预览"的文档,不可在线预览部分如存在完整性等问题,可反馈申请退款(可完整预览的文档不适用该条件!)。
  3. 3、如文档侵犯您的权益,请联系客服反馈,我们会尽快为您处理(人工客服工作时间:9:00-18:30)。

第三章

1.高级调度与低级调度的主要任务就是什么?为什么要引入中级调度?

2.何谓死锁?产生死锁的原因与必要条件就是什么?

3.有一个具有两道作业的批处理系统,作业调度采用短作业优先的调度算法,进

程调度采用以抢占式优先权调度算法,有如下表所示的作业序列,表中所列作

第三章答案

1.高级调度与低级调度的主要任务就是什么?为什么要引入中级调度?

解答:

高级调度就是用于决定把外存上处于后备队列中的哪些作业调入内存,并为它们创建进程、分配必要的资源,然后再将新创建的进程排在就绪队列上,准备报告。

低级调度就是决定就绪队列中哪个进程将获得处理机,然后由分派程序执行把处理机分配给该进程的操作。

引入中级调度的目的就是为了提高内存的利用率与系统吞吐量。为使那些暂时不能运行的进程不再占用内存空间,而将它们调至外存上去等待;当这些进程重又具备运行条件,且内存又稍有空闲时,由中级调度决定,将外存上那些重又具备运行条件的就绪进程重新调入内存,并修改其状态为就绪状态,挂在就绪队列上,等待进程调度。

2.何谓死锁?产生死锁的原因与必要条件就是什么?

解答:

所谓死锁,就是指多个进程因竞争资源而造成的一种僵局,若无外力作用,这些进程都将永远不能再向前推进。

产生死锁的原因可归结为两点:1、竞争资源;2、进程推进顺序非法。

在同时具备以下四个必要条件时,就会产生死锁:1、互斥条件,指在一段时间内某资源只能由一个进程占有。2、请求与保持条件,指进程已经保持了至少一个资源,又提出了新的资源要求,而该资源又被其它进程占有,此时请求进程阻塞,但不释放已持有的资源。3、不剥夺条件,指进程已获得的资源,在未使用完之前,不能被剥夺,只能在使用完时由自己释放。4、环路等待条件,指存在一个进程—资源的环形链。

3.在银行家算法中,把P0发出的请求向量改为Requst0(0,1,0),系统就是否能将资源分配给它?

解答:

当P0发出请求向量Requst0(0,1,0)后,系统按银行家算法进行检查:

(1)Requst0(0,1,0)<=Need(7,4,3)

(2)Requst0(0,1,0)<=Available(2,3,0)

(3)系统暂时先假定可为P0分配资源,并修改有关数据,如下所示: Allocation Need Available

A B C A B C A B C

P0: 0 2 0 7 3 3 2 2 0

P1: 3 0 2 0 2 0

P2: 3 0 2 6 0 0

P3: 2 1 1 0 1 1

P4: 0 0 2 4 3 1

(4)进行安全性检查

work need allocation Work+allocation Finish

A B C A B C A B C A B C True

P1 2 2 0 0 2 0 3 0 2 5 2 2 True

P3 5 2 2 0 1 1 2 1 1 7 3 3 True

P4 7 3 3 4 3 1 0 0 2 7 3 5 True

P2 7 3 5 6 0 0 3 0 2 1 0 3 7 True

P0 1 0 3 7 3 3 0 2 0 1 0 5 7 True 5.有一个具有两道作业的批处理系统,作业调度采用短作业优先的调度算法,进程调度采用以抢占式优先权调度算法,有如下表所示的作业序列,表中所列作

2)、计算平均周转时间

解答:

本题中的系统就是两道作业系统,因此每次只能有两个作业进入系统,作业调度采用短作业优先算法,只有调度进入系统的进程方能参与进程调度;进程调度采用基于优先数的抢占式调度算法,高优先级的进程可以抢占系统处理机。

本题的作业与进程的推进过程如下:

10:00 A作业到达,被作业调度程序调度进入系统

被进程调度程序调度开始运行

10:20 A作业运行20分钟,剩余20分钟

由于优先级低,被进程调度程序调度处于就绪状态B作业到达,被作业调度程序调度进入系统

由于优先级高,被进程调度程序调度处于开始运行状态10:30 A作业等待10分钟,剩余20分钟

继续等待

B作业运行10分钟,剩余20分钟

继续运行

C作业到达,等待被作业调度程序调度

10:50 A作业等待30分钟,剩余20分钟

由于优先级高,被进程调度程序调度处于开始运行状态B作业运行30分钟,作业完成,结束运行

C作业等待20分钟

由于估计运行时间较长,仍未被调入系统中运行

D作业到达,被进程调度程序调度处于就绪状态

11:10 A作业运行40分钟,作业完成,结束运行

C作业等待30分钟,被作业调度程序调度进入系统

由于优先级高,被进程调度程序调度处于开始运行状态D作业等待10分钟

由于优先级低,被进程调度程序调度处于就绪状态

12:00 C作业运行50分钟,作业完成,结束运行

D作业等待60分钟,被进程调度程序调度处于开始运行状态12:20 D作业运行20分钟,作业完成,结束运行

相关文档
最新文档