ソフトウェア

平成22年度 秋期 基本情報技術者試験 午前 問20

2 台の CPU からなるシステムがあり,使用中でない CPU は実行要求のあったタスクに割り当てられるようになっている。このシステムで,二つのタスク A,B を実行する際,それらのタスクは共通の資源 R を排他的に使用する。それぞれのタスク A,B の CPU 使用時間,資源 R の使用時間と実行順序は図に示すとおりである。二つのタスクの実行を同時に開始した場合,二つのタスクの処理が完了するまでの時間は何ミリ秒か。ここで,タスク A,B を開始した時点では,CPU,資源 R ともに空いているものとする。
タスク A: CPU 10ミリ秒 → 資源 R 50ミリ秒 → CPU 60ミリ秒 タスク B: CPU 40ミリ秒 → 資源 R 50ミリ秒 → CPU 30ミリ秒
答えを選ぶ

出典:平成22年度 秋期 基本情報技術者試験 午前 問20(問題文は IPA の公開問題。解説は当サイト作成)

答えと解説を見る

正解:イ

覚える知識

排他資源を伴うタスク実行時間の計算

共通資源を排他的に使うタスクは、先に確保したタスクが解放するまで後のタスクが待たされ、完了時間は待ち時間を含めて求める。

この問題で必要なこと

Aは10ms後に資源Rを60msまで占有し、Bは40ms後にRを要求するがAが使用中のため60msまで待つ。Bは60〜110msでRを使い、その後CPU30msで140msに完了する。

ひっかけ

待ち時間を考慮せず単純に並列実行として120msなどと算出させる。

この知識の出題:本試験系 2 回・免除試験 4 回(公開問題での観測値)

この知識をアプリで解いて覚える レッスン「スケジューリングと排他制御の計算」で学ぶ

同じ知識の過去問