操作系统导论课后作业-第七章答案

文章详细分析了SJF(最短作业优先)和FIFO(先进先出)调度在处理长度相同和不同长度作业时的响应时间和周转时间,以及RR(轮转)调度在时间片为1时的情况。SJF和FIFO在同等条件下提供相同周转时间,而RR优化了平均响应时间,尤其在工作时间相等且长度小于时间片时。
摘要由CSDN通过智能技术生成

课程作业-第七章:

7.1分别使用 SJF 和 FIFO 调度程序运行长度都为 200 的 3 个作业时,计算响应时间和周转时间。

答:

分别使用 SJF 和 FIFO 调度程序运行长度都为 200 的 3 个作业时,计算响应时间和周转时间。

分析:

① SJF:因为SJF是shortest job first,当进程同时到达CPU时,优先执行运行时间最少的进程,但是SJF是非抢占式调度策略,不会在一个进程未执行完时进行切换到另一个进程。所以运行长度为200的3个作业时,因为运行长度一样,所以一个接一个地执行。

周转时间、响应时间、等待时间如下表所示:

响应时间

周转时间

等待时间

作业1

0

200

0

作业2

200

400

200

作业3

400

600

400

平均

200

400

200

SJF的平均响应时间是200,平均周转时间是400。

② FIFO:FIFO是first in first out,先到达的先运行,而且是非抢占式调度策略。又因为3个作业同时到达且运行长度都为200,所以纠结具体先运行哪个作业没有意义,它们都是一样的。最后运行过程与SJF一致,一个接一个地运行。

周转时间、响应时间、等待时间如下表所示:

响应时间

周转时间

等待时间

作业1

0

200

0

作业2

200

400

200

作业3

400

600

400

平均

200

400

200

FIFO的平均响应时间是200,平均周转时间是400。

7.2现在做同样的事情,但有不同长度的作业,即 100、200 和 300。

答:

第一个案例:

作业顺序为100,200,300。

① SJF:运行长度分别为100、200、300同时到达CPU的作业时,按照shortest job first规则,执行顺序为100、200、300,并且不会发生抢占。

周转时间、响应时间、等待时间如下表所示:

响应时间

周转时间

等待时间

作业1

0

100

0

作业2

100

300

100

作业3

300

600

300

平均

133.3333

333.3333

133.3333

SJF 的平均响应时间为133.33,平均周转时间为333.33。

② FIFO:FIFO是first in first out,先到达的先运行,而且是非抢占式调度策略。到达CPU顺序为100、200、300,所以执行顺序也为100、200、300。

周转时间、响应时间、等待时间如下表所示:

响应时间

周转时间

等待时间

作业1

0

100

0

作业2

100

300

100

作业3

300

600

300

平均

133.3333

333.3333

133.3333

FIFO 的平均响应时间为 133.33,平均周转时间为333.33。

第二个案例:

作业顺序改变为300,100,200。

① SJF:

可以看出,SJF的相应、周转时间不变。

② FIFO:

但是FIFO的平均响应时间变为233.33,平均周转时间变为433.33。

7.3现在做同样的事情,但采用 RR 调度程序,时间片为 1。

答:

RR是round-robin轮转调度策略,是抢占式的。它是为了具有较短的平均响应时间,又因为作业的长度实际上是无法预知的,所以此策略只能让每个到达的作业轮转执行一个时间片,时间片必须为时钟中断周期的倍数好进行上下文切换。综上,3个长度为200的作业轮转执行1个时间片直到所有作业执行完毕。

周转时间、响应时间、等待时间如下表:

响应时间

周转时间

等待时间

作业1

0

598

398

作业2

1

599

399

作业3

2

600

400

平均

1

599.00

399

接下图:

综上所述,RR 的响应时间为1,平均周转时间为465.67。

7.4对于什么类型的工作负载,SJF 提供与 FIFO 相同的周转时间?

答:

对于按照时间递增或相等的工作,SJF和FIFO的周转时间相同。

7.5对于什么类型的工作负载和时间片长度,SJF 与 RR 提供相同的响应时间?

答:

对于每个工作时间相等且长度小于等于时间片长度的工作,SJF与RR的响应时间相同。

7.6随着作业长度的增加,SJF 的响应时间会怎样?你能使用模拟程序来展示趋势吗?

答:

①若所有工作长度都增加,则除了最短任务的响应时间不变,其余任务的响应时间均增加。

②若只有部分工作长度增加,则长度比该部分工作长的工作,其响应时间增加。

模拟程序截图如下:

7.7对于 RR,随着时间片长度的增加,其响应时间会怎样?给定 N 个作业,你能写出一个计算最坏情况下的响应时间方程吗?

答:

  1. 响应时间会增加。
  2. 假设q为时间片长,最坏情况下的响应时间为:

此时的平均响应时间为:

评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包

打赏作者

一二爱上蜜桃猫

你的鼓励将是我创作的最大动力

¥1 ¥2 ¥4 ¥6 ¥10 ¥20
扫码支付:¥1
获取中
扫码支付

您的余额不足,请更换扫码支付或充值

打赏作者

实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值