応用情報技術者平成30年秋期 午前問16
処理はすべてCPU処理である三つのジョブ A,B,C がある。それらを単独で実行したときの処理時間は,ジョブAが5分,ジョブBが10分,ジョブCは15分である。この三つのジョブを次のスケジューリング方式に基づいて同時に実行すると,ジョブBが終了するまでの経過時間はおよそ何分か。
〔スケジューリング方式〕
1)、一定時間(これをタイムクウォンタムと呼ぶ)内に処理が終了しなければ,処理を中断させて,待ち行列の最後尾へ回す。
2)、待ち行列に並んだ順に実行する。
3)、タイムクウォンタムは,ジョブの処理時間に比べて十分に小さい値とする。
4)、ジョブの切替え時間は考慮しないものとする。
1、〔スケジューリング方式〕の説明から、
3つのジョブは同時並行的に実行されていくことがわかります。
本当の並行ではないですけれども、並行と同じように考慮するので、
1)、A,B,C並行で 各5分実行した。Aが完了。 ※本当は並行ではないので、 合わせて15分
2)、B,C並行で、各5分実行した。Bが完了。 ※合わせて10分
3)、Cが残りを実行。
つまり、並行だけど、本当は並行ではないの方式。
利点とは、A,B,Cはどっちでも実行しているよとのことですね。
B完了までは、25分になりますね。
参照: