有一个内存中只能两道作业的批处理系统,作业调度采用短作业优先调度算法,进程调度采用按优先级(数字越小优先级越高)抢占式调度算法,下表为各作业的情况:
作业名 | 到达时间 | 估计运行时间 | 优先级 |
---|---|---|---|
作业A | 10:00 | 40分钟 | 5 |
作业B | 10:20 | 30分钟 | 3 |
作业C | 10:30 | 50分钟 | 6 |
作业D | 10:50 | 20分钟 | 8 |
1. 列出作业进入内存的时刻以及作业完成的时刻.
2. 计算各作业的平均周转时间.(45分钟)
解答过程如下:
10:00的时候只有A到达,所以A立刻进入内存并执行
10:20的时候B到达,内存中运行有两道作业,所以这时B被调入内存;
由于采用抢占式调度算法(数字越小优先级越高),所以B作业将获得cpu并执行。
10:50的时候,B执行完毕,内存里允许再调入一道作业。由于采用短作业优先调度
算法,作业D运行时间比C短,所以D作业被调入内存;内存里有A 、D两道作业,
根据抢占式调度算法,A将从阻塞状态变为执行状态,作业D将被阻塞。
11:10的时候A执行完毕,作业C允许被调入内存,并且优先级高于D,所以将执行作业C
12:00作业C执行完毕,作业D获得处理机执行直到结束。
平均周转时间=每道作业运行的时间/作业道数
作业 | 进入内存时间 | 执行完毕时间 | 作业运行时间 |
---|---|---|---|
A | 10:00 | 11:10 | 70 |
B | 10:20 | 10:50 | 30 |
C | 11:10 | 12:00 | 50 |
D | 10:50 | 12:20 | 30 |