操作系统第五版费祥林-课后习题答案参考 下载本文

系统采用SJF 调度算法,作业被调度进入系统后中途不会退出,但作业运行时可被更短作业抢占。(l )分别给出6 个作业的执行时间序列、即开始执行时间、作业完成时间、作业周转时间。(2 )计算平均作业周转时间。 答

说明:

( 1 ) J2 到达时抢占J1 ; J3 到达时抢占J2 。 ( 2 )但J4 到达时,因不满足SJF ,故J4 不能被运行,J3 继续执行5 分钟。 ( 3 )由于是4 道的作业系统,故后面作业不能进入主存而在后备队列等待,直到有作业结束。

( 4 )根据进程调度可抢占原则,J3 第一个做完。而这时J5 、J6 均己进入后备队列,而J5 可进入主存。

( 5 )因J5 最短,故它第二个完成。这时J6 方可进入主存。因J6 最短,故它第三个完成。

( 6 )然后是:J4 、J2和J1

( 7 ) T =( 155 + 95 + 20 + 55 + 15 + 20 ) / 6 = 60

19、有一个具有两道作业的批处理系统,作业调度采用短作业优先的调度算法,进程调度采用以优先数为基础的抢占式调度算法,在下表所示的作业序列,作业优先数即为进程优先数,优先数越小优先级越高。

( 1 )列出所有作业进入内存时间及结束时间。 ( 2 )计算平均周转时间。

答:每个作业运行将经过两个阶段:作业调度(SJF 算法)和进程调度(优先数抢占式)。另外,批处理最多容纳2 道作业,更多的作业将在后备队列等待。

( l ) 10 : 00 ,作业A 到达并投入运行。

( 3 ) 10 : 2O ,作业B 到达且优先权高于作业A ,故作业B 投入运行而作业A 在就绪队列等待。

( 4 ) 10 : 30 ,作业C 到达,因内存中已有两道作业,故作业C 进入作业后备队列等待。

( 5 ) 10 : 50 ,作业B 运行结束,作业D 到达,按SJF 短作业优先算法,作业D 被装入内存进入就绪队列。而由于作业A 的优先级高于作业D ,故作业A 投入运行

( 6 ) 11 : 10 ,作业A 运行结束,作业C 被调入内存,具作业c 的优先级高于作业D , 故作业C 投入运行。

( 7 ) 12 : 00 ,作业c 运行结束,作业D 投入运行。 ( 8 ) 12 : 20 ,作业D 运行结束。

各作业周转时间为:作业A 70 ,作业B 30 ,作业C 90 ,作业D 90 。平均作业周转时间为70 分钟。 20 、某多道程序设计系统供用户使用的主存为100K ,磁带机2 台,打印机1 台。采用可变分区内存管理,采用静态方式分配外围设备,忽略用户作业FO 时间。现有作业序列如下:

作业调度采用FCFS 策略,优先分配主存低地址区且不准移动已在主存的作业,在主存中的各作业平分CPU 时间.现求:( l )作业被调度的先后次序?( 2 )全部作业运行结束的时间?( 3 )作业平均周转时间为多少?( 4 )最大作业周转时间为多少? 答:( l )作业调度选择的作业次序为:作业1 、作业3 、作业4 、作业2 和作业5 .

( 2 )全部作业运行结束的时间9 : 30 。

( 3 )周转时间:作业1 为30 分钟、作业2 为55 分钟、作业3 为40 分钟、作业4 为40 分钟和作业5 为55 分钟。 ( 4 )平均作业周转时间=44 分钟。 ( 5 )最大作业周转时间为55 分钟。

分析:本题综合测试了作业调度、进程调度、及对外设的竞争、主存的竞争。8 : oo 作业1 到达,占有资源并调入主存运行。

8 : 20 作业2 和3 同时到达,但作业2 因分不到打印机,只能在后备队列等待。作业3 资源满足,可进主存运行,并与作业1 平分CPU 时间。 8 : 30 作业1 在8 : 30 结束,释放磁带与打印机。但作业2 仍不能执行,因不能移动而没有30KB 的空闲区,继续等待。作业4 在8 : 30 到达,并进入主存执行,与作业3 分享CPU

8 : 35 作业5 到达,因分不到磁带/打印机,只能在后备队列等待。 9 : 00 作业3 运行结束,释放磁带机。此时作业2 的主存及打印机均可满足,投入运行。作业5 到达时间晚,只能等待。

9 : 10 作业4 运行结束,作业5 因分不到打印机,只能在后备队列继续等待。 9:15巧作业2 运行结束,作业5 投入运行。 9 : 30 作业全部执行结束。