平成27年度春期 エンベデッドシステムスペシャリスト試験 午前II 問7
【問題7】
優先度に基づくスケジューリングを行うリアルタイムOSを用いたシステムで,タスクの状態遷移を計測したところ,図の結果を得た。タスクが待ち,実行可能,実行の三つの状態をもつとき,(A),(B),(C)に当てはまるタスクの状態の組合せとして,適切なものはどれか。
【解説】
優先度に基づくスケジューリングでは、以下の原則が適用されます:
- 優先度の高いタスクが実行中の場合、他のタスクは「待ち」または「実行可能」の状態になります。
- 状態は以下の3種類です:
- 実行: 現在CPUを使用中。
- 実行可能: 実行の準備ができているが、他のタスクが実行中でスケジュール待ち。
- 待ち: 必要なリソースが利用可能になるまで待機。
状態の分析:
- (A): タスクBが実行状態に遷移しているため、タスクAの実行が終わり待ち状態に遷移したことが分かります。
- (B): タスクCの状態が不明ですが、タスクAが待ち状態であるため、タスクBも実行が完了して待ち状態に遷移したことが分かります。また実行状態に遷移した可能性もありますが、この時点でウかエに絞られているため適切ではありません。
- (C): タスクAが待ち状態、タスクBが待ち状態のため、実行可能状態のタスクCは実行状態であることが分かります。
これらを考慮すると、正しい状態の組み合わせはエ: 待ち,待ち,実行です。
出典:平成27年度 春期 エンベデッドシステムスペシャリスト試験 午前II 問7