ソフトウェア
基本情報技術者試験 科目A免除 修了試験 20200126 実施分 問18
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 ミリ秒]
- ア 120
- イ 140
- ウ 150
- エ 200
出典:基本情報技術者試験 科目A免除 修了試験 20200126 実施分 問18
答えと解説を見る
正解:イ
覚える知識
排他資源を伴うタスク実行時間の計算
共通資源は排他的に使われ、後続タスクは解放まで待つ。
この問題で必要なこと
A,BはCPU2台で並行。Aは10でRを50使用(10〜60)。BはCPU40後にR待ち(60〜110)、その後CPU30で140。Aは60+60=120。全体は140。
ひっかけ
待ち時間を考慮せず並行実行として短く見積もらせる。
この知識の出題:本試験系 2 回・免除試験 4 回(公開問題での観測値)