平成23年度 特別 午前 問18
ソフトウェア
CPU使用率に関する問題
CPU が1台で,入出力装置(I/O)が同時動作可能な場合の二つのタスク A,B のスケジューリングは図のとおりであった。この二つのタスクにおいて,入出力装置が CPU と同様に,一つの要求だけを発生順に処理するように変更した場合,両方のタスクが終了するまでの CPU 使用率はおよそ何%か。
〔図〕帯グラフ2本(横軸に等間隔の目盛/黒帯=CPU・網掛け帯=I/O・白=待ち) 目盛を数えて長さを単位で書き起こした(1単位=目盛1つぶん): タスクA │ CPU(2) │ I/O(A)(8) │ CPU(3) │ I/O(A)(4) │ CPU(3) │ … 計20単位 タスクB │ 待ち(2) │ CPU(2) │ I/O(B)(4) │ CPU(2) │ I/O(B)(4) │ CPU(3) │ … 計17単位 (2本の帯は左端が揃っており,同じ目盛を共有している)
- ア43
- イ50
- ウ60
- エ75
答えと解説を見る
✓ これが正解ウ60
解説
仕事量は変わらず、全体の長さだけが伸びます。
見るべきなのは、変更で何が変わり、何が変わらないかです。各タスクが必要とする長さそのものは変わりません。図の帯を数えると、CPU が働くのは合わせて15単位、入出力装置が動くのは合わせて20単位です。変わるのは、二つのタスクの入出力が重なったときに、後から要求したほうが待たされる点です。要求のあった順に一つずつ処理するよう並べ直すと待ちが増え、両方のタスクが終わるまでの長さは25単位まで伸びます。CPU が働く長さは15単位のままですから、CPU 使用率は15を25で割った値になります。判定の軸は、仕事の量は変わらないと押さえたうえで、全体の長さがどこまで伸びるかを数え直せているかです。
ほかの選択肢はなぜ違うのか
- ア43:処理装置と入出力装置をまったく重ねず、すべてを順番に並べた場合の割合です。15単位と20単位を足した35単位で15単位を割ると得られますが、設問はこの二つが同時に動けることを否定していません。
- イ50:全体が30単位だったときの割合にあたります。処理装置が働く長さは15単位で変わりませんが、入出力を1台にして並べ直しても両方が終わるのは25単位ですから、全体を5単位ぶん長く見積もった形です。
- エ75:変更する前のスケジューリングのままの割合です。もとの図では全体が20単位で、そのうち処理装置が働くのが15単位ですからこの値になります。入出力の要求が待たされる分がまだ入っていません。
出典:平成23年度 特別 基本情報技術者試験 午前 問18(改変:原典の図表をテキストに書き起こした)
この解説に誤りを見つけたら教えてください。直して、直した記録を残します。誤りを報告する(メールが開きます)