在一个两道的批处理操作系统中,有6个作业进入系统,它们的进入时刻、估计运行时间和优先级如下表所示。
作业号 | 进入时刻 | 估计运行时间 | 优先级 |
JOB1 | 8:00 | 90分钟 | 5 |
JOB2 | 8:10 | 30分钟 | 6 |
JOB3 | 8:30 | 20分钟 | 3 |
JOB4 | 8:50 | 25分钟 | 8 |
JOB5 | 9:20 | 10分钟 | 2 |
JOB6 | 9:40 | 5分钟 | 4 |
(1)试给出各个作业的运行时间序列。(例如:JOB1:8:00—8:30,9:10—9:20,…)
(2)试计算出作业的平均周转时间。
参考答案:(1)各个作业的运行时间序列为:
JOB1 8:00—8:10,8:40—10:00
JOB2 8:10—8:40
JOB3 10:05—10:25
JOB4 10:25—10:50
JOB5 10:50—11:00
JOB6 10:00—10:05
(2)平均周转时间:(120+30+115+120+100+25)/6=85
本题考查的方面比较多,首先什么是两道批处理操作系统单道是内存中只允许有一个作业运行,多道批处理系统是允许多个作业同时在内存中,则两道是只允许两个作业同时在内存中。其次关于作业调度,是将作业从外存后备队列中调入内存,题目中指出作业调度采用短作业优先调度算法,作业一旦被调度运行就不再退出。最后是关于进程调度,是从内存中的进程中选择一个分配给其CPU,当有新的作业投入运行时,按优先级进行进程调度。下面做具体分析:
8:00时刻,作业1进入内存,只有作业1则运行作业1,8:00—8:10
8:10时刻,作业2进入内存,当有新作业投入运行时,按优先级进行进程调度。作业2的优先级为6高于作业1,则进程调度作业2,作业2开始运行,8:10—8:40
8:30时刻,作业3到来,但因为是两道批处理系统,内存中只能驻留两道,所以作业3不能进入内存,处于外存后备队列。仍继续运行作业2
8:40时刻,作业2完成,作业3进入内存.进程调度是按优先级来,作业1的优先级高于作业3,则运行作业1,8:40—10:00
8:50时刻,作业4到来,内存中已有作业3和作业1,所以作业4处于外存后备队列。作业1继续运行
9:20时刻,作业5到来,内存中已有作业3和作业1,所以作业4处于外存后备队列。作业1继续运行
9:40时刻,作业6到来,内存中已有作业3和作业1,所以作业4处于外存后备队列。作业1继续运行
10:00时刻,作业1完成,退出内存,进行作业调度,短作业优先,从后备队列中调入作业6进入内存,进程调度按优先级进行,作业6的优先级为4高于作业3,所以先运行作业6,10:00—10:05
10:05时刻,作业6完成,退出内存,进行作业调度,短作业优先,从后备队列中调入作业5进入内存,进程调度按优先级进行,作业3的优先级高于作业5,所以先运行作业3,10:05—10:25
10:25时刻,作业3完成,退出内存,进行作业调度后备队列中调入最后一个作业4进入内存,进程调度按优先级进行,作业4的优先级高于作业5,所以先运行作业4,
10:25—10:50
10:50时刻,作业4完成,外存后备队列已无作业,内存中还有作业5,运行作业5,
10:50—11:00