平成20年秋期試験問題 午前問32

問32解説へ
処理はすべてCPU処理である三つのジョブ A,B,C がある。それらを単独で実行したときの処理時間は,ジョブAが5分,ジョブBが10分,ジョブCは15分である。この三つのジョブを次のスケジューリング方式に基づいて同時に実行すると,ジョブBが終了するまでの経過時間はおよそ何分か。
〔スケジューリング方式〕
〔スケジューリング方式〕
- 一定時間(これをタイムクウォンタムと呼ぶ)内に処理が終了しなければ,処理を中断させて,待ち行列の最後尾へ回す。
- 待ち行列に並んだ順に実行する。
- タイムクウォンタムは,ジョブの処理時間に比べて十分に小さい値とする。
- ジョブの切替え時間は考慮しないものとする。
- 15
- 20
- 25
- 30
正解 ウ問題へ
広告
解説
〔スケジューリング方式〕の説明から3つのジョブは同時並行的に実行されていくことがわかります。
処理時間が5分と最も短いジョブAが完了したときは、ジョブBおよびジョブCも全体のうち5分間の処理が完了していることになり、開始からこの時点までの経過時間は3ジョブ×5分で15分となります。
さらにジョブA完了後は、残りの2ジョブでCPU時間を使うことになります。先程と同様にジョブBの残り5分の処理が実行される間に同時にジョブCも5分間の処理が実行されているので、ジョブA完了後からジョブB完了までの経過時間は2ジョブ×5分=10分となります。
以上のことから開始からジョブB完了までに要する時間は25分ということになります。
処理時間が5分と最も短いジョブAが完了したときは、ジョブBおよびジョブCも全体のうち5分間の処理が完了していることになり、開始からこの時点までの経過時間は3ジョブ×5分で15分となります。
さらにジョブA完了後は、残りの2ジョブでCPU時間を使うことになります。先程と同様にジョブBの残り5分の処理が実行される間に同時にジョブCも5分間の処理が実行されているので、ジョブA完了後からジョブB完了までの経過時間は2ジョブ×5分=10分となります。
以上のことから開始からジョブB完了までに要する時間は25分ということになります。

広告