この概念が出た関連問題

この試験の対策ガイド

情報処理安全確保支援士試験 対策ガイド

合格率・勉強法・参考書の選び方をまとめています

見る →
答えと解説を見る(先に解くのがおすすめ)

正解は ア

解説

I²C(I2C)バスは1本の共有バスに複数のデバイスが接続される仕組みで、同時に複数のデバイスからのアクセスは許されない(シリアル通信、マスタ/スレーブ構成)。二つのタスクが交互にセンサを読み込む場合、一方のタスクがバスを使用している間は他方のタスクがバスにアクセスできないよう排他制御が必要。この目的に適するのは「セマフォ」である。セマフォはリソースの排他的利用を制御する同期機構で、タスクがセマフォを取得(P操作)してリソースを専有し、完了後に解放(V操作)する。選択肢cが正解。

なぜ他の選択肢は違うのか

選択肢 イ
マルチスレッドは複数処理を並行実行する仕組みであり、排他制御そのものではない。複数スレッドが同時にバスへアクセスする問題を解決しない。
選択肢 エ
ラウンドロビンはタスクのスケジューリング方式(各タスクに均等な時間を割り当てる)であり、排他制御とは別の概念。

解くときのポイント

排他制御=セマフォ(またはミューテックス)。I²Cのような共有バス・共有リソースへのアクセス制御に使う。キューはデータ受け渡し、ラウンドロビンはスケジューリング、マルチスレッドは並行実行と区別する。