I2Cバスにおける共有資源の排他制御とセマフォ

セマフォ(Semaphore)は、並行して動作する複数のタスク間で、同一の $\text{I}^2\text{C}$ バスコントローラなどの共有資源への同時アクセスを防ぎ、排他制御(相互排除)を実現するためにリアルタイムOSが提供する同期・排他制御機構です。 キュー(メッセージキュー)は、タスク間でデータやメッセージを送受信(バッファリング通信)するためのデータ構造・機能です。 マルチスレッドは、1つのプロセス内で複数の処理の流れを並行して実行するプログラミング実行形態であり、排他制御そのものを行う機能ではありません。 ラウンドロビンは、実行可能状態にあるタスクに一定のCPU時間(タイムスライス)を順番に割り当てていくタスクスケジューリング方式です。

一つの I2C\text{I}^2\text{C} バスに接続された二つのセンサがある。それぞれのセンサ値を読み込む二つのタスクで排他的に制御したい。利用するリアルタイムOSの機能として,適切なものはどれか。

出典令和4年度 春期 応用情報技術者試験 午前 問17
ア
キュー
イ
セマフォ
ウ
マルチスレッド
エ
ラウンドロビン