
1. 有一个具有两道作业的批处理系统,作业调度采用短作业优先的调度算法,进程调度采用抢占式的优先级调度算法,在下表的作业序列,作业优先数即为进程优先数,优先数越小优先级越高。
| 作业名 | 到达时间 | 估计运行时间 | 优先数 |
| A | 8:00 | 40分钟 | 4 |
| B | 8:20 | 30分钟 | 2 |
| C | 8:30 | 50分钟 | 3 |
| D | 8:50 | 20分钟 | 5 |
(2)计算这批作业的平均周转时间及平均带权周转时间。
解:
作业执行过程如下:
8:00 A到达,内存空,A进入内存,无竞争开始运行;
8:20 B到达,进入内存,优先数为2,由于A的优先数为4,相比B优先级低,被剥夺处理器,B开始运行;
8:30 A到达,内存满,不可进入内存;
8:50 B运行结束,同时D到达,同C争夺内存,由于D运行时间短,按照短作业优先的调度算法,D被调入内存;D与A的优先数相比,A的优先级别高,获得处理器继续运行;
9:10 A运行结束,C进入内存,C的优先级别高于D,C开始运行;
10:00 C运行结束,D开始运行;
10:20 D运行结束。
1)所有作业进入内存时间及结束时间如下表所示:
| 作业 | 到达时间 | 进入内存时间 | 结束时间 | 执行时间(分钟) | 周转时间 (分钟) | 带权周转时间(分钟) |
| A | 8:00 | 8:00 | 9:10 | 40 | 70 | 7/4 |
| B | 8:20 | 8:20 | 8:50 | 30 | 30 | 1 |
| C | 8:30 | 9:10 | 10:00 | 50 | 90 | 9/5 |
| D | 8:50 | 8:50 | 10:20 | 20 | 90 | 9/2 |
这批作业的平均周转时间=(70+30+90+90)/4=70分钟
这批作业的平均带权周转时间=(7/4+1+9/5+9/2)/4=2.26
2. 有一个四道作业的操作系统,若在一段时间内先后到达6个作业,它们的提交和估计运行时间由下表给出:
| 作业 | 提交时间 | 估计运行时间(分钟) |
| J1 | 8:00 | 60 |
| J2 | 8:20 | 35 |
| J3 | 8:25 | 20 |
| J4 | 8:30 | 25 |
| J5 | 8:35 | 5 |
| J6 | 8:40 | 10 |
解答:
作业执行过程如下:
8:00 J1到达,内存空,无竞争,进入内存开始运行;
8:20 J1运行20分钟,剩余40分钟;
J2到达,运行时间为35分钟,小于J1,取代J1开始运行。
8:25 J1剩40分钟,J2剩30分钟;
J3到达,运行时间为20分钟,小于J2,取代J2开始运行。
8:30 J1剩40分钟,J2剩30分钟;J3剩15分钟;
J4到达,运行时间为25分钟,大于J3, J3继续运行。
8:35 J3剩10分钟;
J5到达,运行时间为5分钟,尽管时间最短,但是内存中已有四道作业,因此,J5,不可进入内存,J3继续运行。
8:40 J3剩5分钟;J6到达,同理不可进入内存,J3继续运行。
8:45 J3运行结束;J5最短,进入内存并开始执行。
8:50 J5运行结束;J6进入内存,运行时间10分钟,为最短,开始执行。
9:00 J6运行结束,J1剩40分钟,J2剩30分钟;J4剩25分钟;J4最短,开始运行。
9:25 J4运行结束, J2最短,开始运行。
9:55 J2运行结束, J1开始运行。
10:35 J1运行结束。
1)所有作业的开始执行时间、作业完成时间、作业周转时间,如下表所示:
| 作业 | 提交时间 | 运行时间(分钟) | 开始执行时间 | 完成时间 | 周转时间(分钟) | 平均周转时间(分钟) |
| J1 | 8:00 | 60 | 8:00 | 10:35 | 155 | 155/60 |
| J2 | 8:20 | 35 | 8:20 | 9:55 | 95 | 95/35 |
| J3 | 8:25 | 20 | 8:25 | 8:45 | 20 | 1 |
| J4 | 8:30 | 25 | 9:00 | 9:25 | 55 | 11/5 |
| J5 | 8:35 | 5 | 8:45 | 8:50 | 15 | 3 |
| J6 | 8:40 | 10 | 8:50 | 9:00 | 20 | 2 |
这批作业的平均周转时间=(155+95+20+55+15+20)/6=60分钟
这批作业的平均带权周转时间=(155/60+195/35+1+11/5+3+2)/4=4.01
