第三章处理机调度及答案
合集下载
相关主题
- 1、下载文档前请自行甄别文档内容的完整性,平台不提供额外的编辑、内容补充、找答案等附加服务。
- 2、"仅部分预览"的文档,不可在线预览部分如存在完整性等问题,可反馈申请退款(可完整预览的文档不适用该条件!)。
- 3、如文档侵犯您的权益,请联系客服反馈,我们会尽快为您处理(人工客服工作时间:9:00-18:30)。
进程管理
该调度算法下:平均周转时间
带权平均周转时间
进程管理
短作业优先算法的运行情况见表:
进程管理
该调度算法下:平均周转时间 带权平均周转时间
由以上两种算法下得到的结果来看,短作业优先算 法优于先来先服务算法。
进程管理
3、调度算法
北京大学1995年试题
有一个具有两道作业的批处理系统,作业调度采用短作业 的调度算法,进程调度采用以优先数为基础的抢占式调度 算法,有如下表所示的作业序列(表中所列作业优先数为 进程优先数,数值越小,优先级越高)。 (1)列出所有作业进入内存的时刻及结束时刻。
进程管理
先来先服务:1,2,3,4
平均周转时间: (2+2.8+3.1+3.3)/4=2.8 平均带权周转时间:(1+2.8/1+31/5+11)/4=5.25 最短作业优先: 1,4,3,2 平均周转时间(2+1.8+2.4+3.6)/4=2.45 平均带权周转时间(2+9/5+12/5+18/5)/4=3.85 最高响应比算法:1,4,3,2 R=1+W/T 请同学们采用最高相应比算法计算周转时间和调度顺序 t1=2 执行1 t2=1 w2=12-10.2=1.8 r2=1+1.8/1=2.8 t3=0.5 w3=12-10.4=1.6 r3=1+1.6/0.5=4.2 t4=0.3 w4=12-10.5=1.5 r4=1+1.5/0.3=6 执行4 w2=1.8+0.3=2.1 r2=1+2.1/1=2.1 w3=1.6+0.3=1.9 r3=1+1.9/0.5=4.8 执行3,2 平均周转时间同最短作业优先法。
进程管理
设有P1、P2、P3、P4共4个进程同时依次进入就绪队列中 ,它们需要的处理器时间和优先级别如下所示:
进程 使用处理器时间(秒) 优先数
P1
P2 P3 P4
20
30 10 5
3
5 2 4
忽略调度所花费的时间,请回答下列问题: (1)写出分别采用“先来先服务”和“非抢占式的优先 数”调度算法选中的进程执行的次序。 (2)在上述两种算法下,分别算出每个进程在就绪队列 的等待时间和平均等待时间。
(3) 三个作业全部完成时外设IO1的利用率是:
进程管理
假设有4道作业,它们的提交时刻及执行时间由下表给出:
作业号
1 2 3 4
提交时刻
10.00 10.20 10.40 10.50
执行时间
2 1 0.5 0.3
计算在单道程序环境下,采用先来先服务调度算法和最短作 业优先调度算法时的平均周转时间和平均带权周转时间,并 指出它们的调度顺序。
进程管理
先来先服务调度算法: 8.00作业1到达,开始运行;8.30作业1运行0.30小 时;作业2到达,等待调入系统;9.00作业1运行 1.00小时,运行结束;作业2较作业3先到达,开始 运行;作业3到达;9.30作业2运行0.30小时,继续 运行;作业3等待调入系统;作业4到达,等待调入 系统;12.00作业2运行3小时,运行结束;作业3先 到达,开始运行;作业4等待调入系统;12.10作业 3运行0.10小时,运行结束;作业4开始运行; 12.60作业4运行0.50小时,运行结束。
7.7 8.10 8.80
1.5
0.7 0.70 2.3
平均周转时间:(1.5+2.3+O.7+0.7)/4=1.3
进程管理
请同学们计算平均周转时间
平均周转时间=280/4=70分钟
B
C D
10:50
20
6
进程管理
4、调度算法
某多道程序设计系统配有一台处理器和两台外设IO1、IO2, 现有3个优先级由高到低的作业J1、J2和J3都已装入了 主存,它们使用资源的先后顺序和占用时间分别是: (南京大学1999年试题) J1: IO2(30ms), CPU(10ms), IO1(30ms), CPU(10ms). J2: IO1(20ms), CPU(20ms), IO2(40ms). J3: CPU(30ms), IO1(20ms). 处理器调度采用可抢占的优先数算法,忽略其他辅助操作 时间,回答下列问题: (1)分别计算作业J1、J2和J3从开始到完成所用的时间。 (2)3个作业全部完成时CPU的利用率。 (3)3个作业全部完成时外设I01的利用率。
进程管理
【分析】 如前说述,本题在多道系统中的三个进程不仅要竞 争使用处理机,而且还要竞争使用外设,这使得进 程之间的关系更加复杂。另一方面,本题为了突出 进程对CPU和外设的使用,弱化了作业调度的处理, 因此题目中已假设这三个进程都已经装入主存,从 这一点看,又降低了本题的难度。分析过程如图 4.2所示(图中水平箭头表示实际执行过程,水平 虚线表示等待过程)。进程运行示意图:
进程管理
进程管理
【解答】 ①系统资源总数向量为(9, 3, 6) 各进程对资源需求矩阵为: ②采用银行家算法进行计算分析可知:
进程管理
2、调度算法
现有如下作业序列:作业1(提交时间8.00,运行时间 1.00);作业2(提交时间8.30,运行时间3.00);作 业3(提交时间9.00,运行时间0.10);作业4(提交 时间9.30,运行时间0.50)(单位:小时,以十进制 计)。 试用先来先服务和短作业优先调度算法处 理该作业序列,问哪种作业调度算法性能更好(要求给 出计算的数据和必要的步骤)。(华中科技大学2001年 试题)
(2)计算平均周转时间
作业名 A 到达时刻 10:00 10:20 10:30 10:50 估计运行时间 40 30 50 20 优先数 5 3 4 6 进程管理
B
C D
解答: 10:00 A到达,无竞争,开始运行; 10:20 B到达,进入主存,优先数为3,优于A,B开始运行 10:30 C到达,不可进入;
试分别用“先来先服务”和“非抢占式的优先数”调度算 法,求出每个作业的周转时间和平均周转时间。
进程管理
解答: (1)先来先服务调度算法
作业 1 2 3 4 执行次序 进入时间 要求执行时间 开始时间 1 2 3 4 6.00 6.50 7.00 7.40 1.5 0.7 0.2 0.4 6.00 7.50 8.20 8.40 完成时间 7.5 8.2 8.4 8.8 周转时间 1.5 1.7 1.4 1.4
进程管理
用非抢占式的优先数调度算法,每个进程在就绪队列中的等 待时间分别为; P1:30+5=35秒 P2:0秒 P3:20+30+5=55秒 P4:30秒 平均等待时间为:(35+0+55+30)/4=30秒
进程管理
在单处理器环境下,有4道作业,其进入系统的时间和所需 要的执行时间如下所示
作业 1 2 3 4 进入时间(时) 6.00 6.50 7.00 7.40 要求执行时间(小时) 优先数 1.5 0.7 0.2 0.4 1 2 3 4
进程管理
解答: (1)用先来先服务的调度算法时,4个进程的调度次序是P1、 P2、P3、P4。 用非抢占式的优先数调度算法时,4个进程的调度次序是P2 、P4、P1、P3。 (2)用先来先服务调度算法,每个进程在就绪队列中的等待 时间分别为: P1:0秒 P2:0+20=20秒 P3:0+20+30=50秒 P4:0+20+30+10=60秒 平均等待时间为:(0+20+50+60)/4=32.5秒
进程管理
0
20
30
40
ຫໍສະໝຸດ Baidu
50
60
70
80
90
J1: IO2(30ms), CPU(10ms), IO1(30ms), CPU(10ms). J2: IO1(20ms), CPU(20ms), IO2(40ms). J3: CPU(30ms), IO1(20ms).
进程管理
【解答】 (1) 由上图可知:J1从开始到完成的时间是0~ 80msJ2从开始到完成的时间是0~90msJ3从开始到 完成的时间是0~90ms (2) 三个作业全部完成时CPU的利用率是:
处理机调度作业
进程管理
1、银行家算法
某系统有R1、R2和R3共3种资源,在T0时刻P1、P2、P3 和P4这4个进程对资源的占用和需求情况见表2.2,此刻 系统的可用资源向量为(2, 1, 2),问题:(中科院软 件所1999年试题) ①将系统中各种资源总数和此刻各进程对各资源的需求 数目用向量或矩阵表示出来;②如果此时P1和P2均发出 资源请求向量Request(1, 0, 1),为了保持系统安全 性,应该如何分配资源给这两个进程?说明你所采用策 略的原因;③如果②中两个请求立刻得到满足后,系统 此刻是否处于死锁状态?
平均周转时间:(1.5+1.7+1.4+1.4)/4=1.5
进程管理
(2)非抢占式的优先数调度算法
作业 执行次序 进入时间 要求执行时间 开始时间 完成时间 周转时间
1
2 3 4
1
3 4 2
6.00
7.00 7.40 6.50
1.5
0.2 0.4 0.7
6.00
7.50 7.70 8.10
7.50
10:50 B结束,同时D到达,同C争夺内存,D运行时间短, 被调度进入内存;A的优先数高,开始运行;
11:10 A结束,C进入内存,C的优先数高于D,开始运行; 12:00 C结束, D开始运行; 12:20 D结束。
作业 名 A 到达时刻 10:00 10:20 10:30 估计运行时 间 40 30 50 优先数 5 3 4