操作系统教程第五版答案 下载本文

jobl : i2 ( 30ms )、cpu ( 10ms )、i1 ( 30ms )、cpu

( 10ms )、i2 ( 20ms ) job2 : i1 ( 20ms )、cpu ( 20ms )、i2 ( 40 ms )

job3 : cpu ( 30ms )、i1 ( 20ms )、cpu ( 10ms )、i1 ( 10ms ) 如果cpu 、i1 和i2 都能并行工作,优先级从高到低为jobl 、job2 和job3 ,优先级高的作业可以抢占优先级低的作业的cpu ,但不抢占i1和i2 。试求:( l )每个作业从投入到完成分别所需的时间。(2 )从投入到完成cpu 的利用率。(3 )i2设备利用率。

答:画出三个作业并行工作图如下(图中着色部分为作业等待时间) : ,

( 1 ) job1 从投入到运行完成需110ms , job2 从投入到运行完成需90ms , job3 从投入到运行完成需110ms.

cpu 空闲时间段为:60ms 至70ms , 80ms 至90ms , 100ms 至110ms 。所以cpu 利用率为(110-30)/10 = 72.7 %。

设备i1 空闲时间段为:20ms 至40ms , 90ms 至100ms,故i1的利用率为 (110-30)/l10 = 72 . 7 %。

设备i2 空闲时间段为:30ms 至50ms,故i2的利用率为(110-20) / 110 = 81.8 %。

5 在单cpu 和两台i/o( i1 , 12 )设备的多道程序设计环境下,同时投入三个作业运行。它们的执行轨迹如下:

jobl : i2 ( 30ms )、cpu ( 10rns )、i1 ( 30ms )、cpu ( 10ms ) job2 : i1 ( 20ms )、cpu ( 20ms )、i2 ( 40ms ) job3 : cpu ( 30ms )、i1 ( 20ms )

如果cpu 、i1和i2 都能并行工作,优先级从高到低为job1 、job2和job3 ,优先级高的作业可以抢占优先级低的作业的cpu 。 试求:( l )每个作业从投入到完成分别所需的时间. ( 2 )每个作业投入到完成cpu 的利用率。 (3 )i/0设备利用率。

答:画出三个作业并行工作图如下(图中着色部分为作业等待时间) :

( 1 ) job1从投入到运行完成需80ms , job2 从投入到运行完成需90ms , job3 从投入到运行完成需90ms 。

( 2 ) cpu 空闲时间段为:60ms 至70ms , 80ms 至90ms 。所以cpu利用率为( 90-20 ) / 90 = 77.78 %。

( 3 )设备i1 空闲时间段为:20ms 至40ms ,故i1 的利用率为

(90-20 ) / 90 = 77 . 78 %。设备i2 空闲时间段为:30ms 至50ms ,故i2 的利用率为(90-20 ) / 90=77.78 %。

6 若内存中有3 道程序a 、b 、c ,它们按a 、b 、c 优先次序运行。各程序的计算轨迹为:

a :计算(20 )、i/o( 30 )、计算(10 ) b :计算(40 )、i/o( 20 )、计算(10 ) c :计算(10 )、i/o ( 30 )、计算(20 )

如果三道程序都使用相同设备进行i/o(即程序用串行方式使用设备,调度开销忽略不计)。试分别画出单道和多道运行的时间关系图。两种情况下,cpu 的平均利用率各为多少? 答:分别画出单道和多道运行的时间图 ( 1 )单道运行时间关系图

单道总运行时间为190ms 。cpu 利用率为(190-80 )/190 = 57.9 % 单道运行时间关系图

多道总运行时间为140ms 。cpu 利用率为(140-30 ) / 140 = 78.6 % 7 若内存中有3 道程序a 、b 、c ,优先级从高到低为a 、b 和c ,它们单独运行时的cpu 和i/o 占用时间为:

如果三道程序同时并发执行,调度开销忽略不计,但优先级高的程序可中断优先级低的程序,优先级与i/o 设备无关。试画出多道运行的时间关系图,并问最早与最迟结束的程序是哪个?每道程序执行到结束分别用了多少时间?计算三个程序全部运算结束时的cpu 利用率?

答:画出三个作业并发执行的时间图: