平成23年度 特別 エンベデッドシステムスペシャリスト試験 午前Ⅱ 問8
テクノロジ/ソフトウェアタスクが発行するシステムコールと発行後の状態遷移先との組合せとして,起こり得るものはどれか。
出典:平成23年度 特別 エンベデッドシステムスペシャリスト試験 午前Ⅱ 問8
- アイベントフラグ待ち → 実行可能状態
- イセマフォのP操作 → 実行可能状態
- ウメールボックスへの送信 → 実行可能状態
- エメモリ返却 → 待ち状態
正解:ウ
解説
各システムコールの発行が,発行したタスク自身をどの状態に遷移させ得るかを考えます。イベントフラグ待ち,セマフォのP操作は,条件が満たされていなければ発行したタスク自身が待ち状態に入る操作なので,発行後に直ちに実行可能状態になるとは限りません。メモリ返却は資源を解放するだけの操作であり,発行したタスクが待ち状態に入ることはありません。一方,メールボックスへの送信は,そのメールボックスを受信待ちしていた優先度の高いタスクを待ち状態から実行可能状態に遷移させ,その結果,送信を行っていたタスク自身がCPUを明け渡して実行状態から実行可能状態へ遷移することが起こり得ます。
選択肢ごとの解説
- ア誤り。イベントフラグ待ちは,指定した条件が成立していなければ発行したタスク自身が待ち状態に遷移する操作であり,発行後に必ず実行可能状態になるとは限りません。
- イ誤り。セマフォのP操作は,資源が確保できなければ発行したタスク自身が待ち状態に遷移する操作であり,発行後に必ず実行可能状態になるとは限りません。
- ウ正しい。メールボックスへの送信によって,そのメールボックスを受信待ちしていた優先度の高いタスクが待ち状態から実行可能状態(さらに実行状態)に遷移し,それに伴って送信元のタスクが実行状態から実行可能状態に遷移することが起こり得ます。
- エ誤り。メモリ返却は資源を解放するだけの操作であり,発行したタスク自身が待ち状態に遷移することはありません。