令和4年度 春期 応用情報技術者試験 午前 問17
テクノロジ/ソフトウェア一つの I²C バスに接続された二つのセンサがある。それぞれのセンサ値を読み込む二つのタスクで排他的に制御したい。利用するリアルタイム OS の機能として,適切なものはどれか。
出典:令和4年度 春期 応用情報技術者試験 午前 問17
- アキュー
- イセマフォ
- ウマルチスレッド
- エラウンドロビン
正解:イ
解説
一つの I²C バスという共有資源を二つのタスクが排他的に使用するには,リアルタイム OS の排他制御機構であるセマフォを用います。バス使用前にセマフォを獲得し,使用後に解放することで同時アクセスを防げます。
選択肢ごとの解説
- ア誤り。キューはタスク間のメッセージ通信やデータの受渡しに使う機能であり,排他制御の機能ではありません。
- イ正しい。セマフォは共有資源への同時アクセスを防ぐ排他制御のための機能です。
- ウ誤り。マルチスレッドは並行処理を実現する仕組みであり,排他制御そのものではありません。
- エ誤り。ラウンドロビンはタスクに CPU 時間を順番に割り当てるスケジューリング方式であり,排他制御の機能ではありません。