先打条广告,这是我的新博客,www.aqugx.com , 会经常更新,欢迎大家光顾~
先看高程中的一道题目:
一个有两个作业管理进程的批处理系统,作业调度采用最高响应比优先的算法,
进程调度采用基于优先数(优先数大者优先)的算法,有以下作业序列。
作业名 到达时间 估计运行时间(分) 优先数
A 10:00 50 5
B 10:20 60 7
C 10:50 40 3
D 11:20 80 8
E 11:40 30 6
F 12:00 70 9
计算每个作业的完成时间。
CSDN讨论帖:http://topic.csdn.net/t/20020906/08/1000588.html
先大概了解下:
作业调度(响应比)按一定的算法从磁盘上的“输入井”中选择资源能得到满足的作业装入内存,使作业有机会去占用处理器执行。但是,一个作业能否占用处理器,什么时间能够占用处理器,必须由进程调度来决定。所以,作业调度选中 了一个作业且把它装入内存时,就应为该作业创建一个进程,若有多个作业被装入内存,则内存中同时存在多个进程,这些进程的初始状态为就绪状态,然后,由进程调度(优先数)来选择当前可占用处理器的进程,进程运行中由于某种原因状态发生变化,当它让出处理器时,进程调度就再选另一个作业的进程运行。 因此,作业调度与进程调度相互配合才能实现多道作业的并行执行。
简单来说:比如两个作业管理进程的批处理系统。内存中一个作业运行,一个作业就绪。不是每个作业都有就绪的机会,想等到这个机会,等待的几个作业必须比较一下。
打个比方:小诊所里面补牙,一个人补着,几个人在屋子里等着,几个人在门口等着。
屋外的想进去,大家先来争(响应比:Rp=1+(已经等的时间) / 拔牙大概需要的时间),比完后,几个幸运儿进屋了,谁先补呢?再来比。这些人里面有个医生认识的领导,那领导先来,送红包的第二个,其他人等着(这就是优先数,大者享受优先待遇)。
接下来研究这道题,不着急,慢慢想,借用一段CSDN前辈的分析过程:
10:00 作业A到达,被作业调度程序调度进入系统,被进程调度程序调度开始运行。
10:20 作业A运行20分钟,剩余30分钟,由于A的优先数小于B的优先数,被进程调度程序调度处于就绪状态。
作业B到达,被作业调度程序调度进入系统,被进程调度程序调度开始运行。
10:50 作业A等待30分钟,剩余30分钟。
作业B运行30分钟,剩余30分钟。
作业C到达,等待作业调度进程调度。
11:20 作业A等待60分钟,剩余30分钟,由于A的优先数大于C优先数,被进程调度程序调度运行。
作业B运行60分钟,运行结束。
作业C等待30分钟,响应比=1+30/40=1.75,被作业调度程序调度进入系统,被进程调度程序调度处于就绪状态。
作业D到达,响应比 =1+0/80=1,响应比低于作业C,等待作业调度进程调度。
11:40 作业A运行40分钟,剩余10分钟,由于A的优先数大于C优先数,被进程调度程序调度运行。
作业C等待20分钟,剩余40分钟。
作业D等待20分钟,响应比=1+20/80=1.25。
作业E到达,等待作业调度进程调度。
11:50 作业A运行50分钟,运行结束。
作业C等待30分钟,剩余40分钟,由于C的优先数小于D的优先数,被进程调度程序调度处于就绪状态。
作业D等待30分钟,响应比 =1+30/80=1.375,响应比高于作业E,被作业调度程序调度进入系统,被进程调度程序调度运行。
作业E等待10分钟,响应比=1+10/30=1.33,等待作业调度进程调度。
12:00 作业C等待40分钟,剩余40分钟。
作业D运行10分钟。
作业E等待20分钟,等待作业调度进程调度。
作业F到达,等待作业调度进程调度。
13:10 作业C等待110 分钟,剩余40分钟,由于C的优先数小于E的优先数,被进程调度程序调度处于就绪状态。
作业D等待80分钟,运行结束。
作业E等待70分钟,响应比=1+70/30=3.33,响应比高于作业F,被作业调度程序调度进入系统,被进程调度程序调度运行。
作业F等待70分钟,响应比=1+70/70=2,等待作业调度进程调度。
13:40 作业C等待140分钟,剩余40分钟,由于 C的优先数小于F的优先数,被进程调度程序调度处于就绪状态。
作业E运行30分钟,运行完成。
作业F等待100分钟,被作业调度程序调度进入系统,被进程调度程序调度运行
14:50 作业C等待180分钟,剩余40分钟。
作业F运行70分钟,运行完成。
15:30 作业C运行40分钟,运行完成。
各作业的执行时间序列为:
作业A(50分钟)10:00-10:20, 11:20-11:50
作业B(60分钟)10:20-11:20
作业C(40分钟)14:50-15:30
作业D(80分钟)11:50-13:10
作业E(30分钟)13:10-13:40
作业F(70分钟)13:40-14:50
CSDN讨论帖:http://topic.csdn.net/t/20020906/08/1000588.html
转帖请注明出处:博客园及CSDN,欢迎拍砖,谢谢~
这是我的新博客,www.aqugx.com , 会经常更新,欢迎大家光顾~