SkillStack
テクノロジ系16 / 80問

応用情報技術者試験 令和7年度 秋期 午前 問16

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

選択肢を押すと答え合わせができます。

正解と解説を見る

【正解】イ

セマフォは、共有リソースへのアクセスを排他的に制御するためのリアルタイムOS(RTOS)の同期機構です。

イのセマフォが正解です。I²Cバスは共有リソースであり、二つのタスクが同時にバスにアクセスすると通信の衝突が発生します。セマフォ(特にバイナリセマフォやミューテックス)を使うことで、一方のタスクがバスを使用中は他方のタスクを待機させ、排他制御を実現できます。

アのキューは、タスク間でデータを受け渡すための機構です。排他制御ではなく、データ通信に使われます。

ウのマルチスレッドは、複数のタスクを並行して実行する仕組みそのものであり、排他制御の機構ではありません。むしろマルチスレッド環境で排他制御が必要になります。

エのメモリプールは、メモリの動的割当てを効率的に行うための機構です。排他制御とは目的が異なります。

【ポイント】 RTOSの同期・通信機構として、セマフォ(排他制御)、ミューテックス(排他制御+所有権)、キュー(タスク間通信)、イベントフラグ(タスク間同期)の違いを理解しておきましょう。

出典:令和7年度 秋期 応用情報技術者試験 午前 問16
※ 解説は SkillStack 編集部が作成したものです。Web 表示のため、図表の配置や表記を一部改めています。

この回の80問を、アプリで通しで解く

  • 本番と同じ問題数・制限時間で通し演習(模試モード)
  • 間違えた問題は自動で「復習すべき問題」に回る
  • 解説で分からない点はAIに質問できる
SkillStackで無料で始める