在一单道批处理系统中,一组作业的提交时间和运行时间如下表所示。试计算以下三种作业调度算法的平均周转时间T和平均带权周转时间W。
作业 | 提交时间 | 运行时间 |
1 | 6.0 | 1.5 |
2 | 7.0 | 1.0 |
3 | 7.5 | 0.5 |
4 | 7.6 | 0.1 |
(1)先来先服务调度算法。
(2)短作业优先调度算法。
(3)高响应比优先调度算法。
解:①先来先服务算法
作业 | 提交时间 | 运行时间 | 开始时间 | 结束时间 | 周转时间 | 带权周转时间 |
1 | 6.0 | 1.5 | 6.0 | 7.5 | 1.5 | 1 |
2 | 7.0 | 1.0 | 7.5 | 8.5 | 1.5 | 1.5 |
3 | 7.5 | 0.5 | 8.5 | 9.0 | 1.5 | 3 |
4 | 7.6 | 0.1 | 9.0 | 9.1 | 1.5 | 15 |
T=1/4(1.5+1.5+1.5+1.5)=1.5
W=1/4(1+1.5+3+15)=5.125
解析:先来先服务就是根据作业顺序进行计算就可以了。这里的周转时间=结束时间-提交时间
带权周转时间=周转时间/运行时间
②短作业优先调度算法
作业 | 提交时间 | 运行时间 | 开始时间 | 结束时间 | 周转时间 | 带权周转时间 |
1 | 6.0 | 1.5 | 6.0 | 7.5 | 1.5 | 1 |
2 | 7.0 | 1.0 | 8.1 | 9.1 | 2.1 | 2.1 |
3 | 7.5 | 0.5 | 7.5 | 8.0 | 0.5 | 1 |
4 | 7.6 | 0.1 | 8.0 | 8.1 | 0.5 | 5 |
T=1/4(1.5+2.1+0.5+0.5)=1.15
W=1/4(1+2.1+1+5)=(9.1)/4
解析:短作业优先调度算法根据第一个运行时间然后进行第二个运行时间判断,第一个作业的结束时间为7.5.那么就有作业2和作业3可以运行,根据作业运行时间进行判断,时间短的首先运行,这里作业3的运行时间短,所以先运行作业3.
然后继续进行判断,当前的时间已经到了8.0,作业2和作业4进行判断,选择作业4,剩下的再运行作业2.
周转时间和带权周转时间根据上面的公式进行计算即可。
③高响应比优先调度算法
作业 | 提交时间 | 运行时间 | 开始时间 | 结束时间 | 周转时间 | 带权周转时间 |
1 | 6.0 | 1.5 | 6.0 | 7.5 | 1.5 | 1 |
2 | 7.0 | 1.0 | 7.5 | 8.5 | 1.5 | 1.5 |
3 | 7.5 | 0.5 | 8.6 | 9.1 | 1.6 | 3.2 |
4 | 7.6 | 0.1 | 8.5 | 8.6 | 1 | 10 |
T=1/4(1.5+1.5+1.6+1)=1.4
W=1/4(1+1.5+3.2+10)=15.7/4
解析:高响应比优先调度算法这里有些不同。这里作业一运行完毕之后,需要根据公式:优先权=(等待时间+执行时间)/执行时间,来判断下一个需要运行的作业。同样,这里的作业1的结束时间为7.5,留下作业2和作业3进行判断。根据公式计算作业2: (7.5-7.0+1)/1=1.5
计算作业3:(7.5-7.5+0.5)/0.5=1.所以先运行作业2,作业2运行完毕后,对作业3和作业4进行判断。
作业3:(8.5-7.5+0.5)/0.5=3
作业4:(8.5-7.6+0.1)/0.1=10,所以先运行作业4,后运行作业3
标签:1.5,作业,带权,时间,周转,运行 From: https://blog.51cto.com/u_15888443/5881371