イベントフラグとは?
イベントフラグとは、複数のビットからなるフラグ集合に対して、指定したビットの成立(AND待ち/OR待ち)を条件にタスクを待たせる同期機構。複数の事象の組合せ成立を1つの待ちで表現できる。
エンベデッドシステムスペシャリスト試験の過去問では1回出題されています。
いべんとふらぐ
イベントフラグの意味
複数のビットからなるフラグ集合に対して、指定したビットの成立(AND待ち/OR待ち)を条件にタスクを待たせる同期機構。複数の事象の組合せ成立を1つの待ちで表現できる。
イベントフラグの具体例
「受信完了」かつ「タイマ満了」の両方がそろったら処理を開始する、といった待ち合わせに使う。
イベントフラグは試験でどう引っ掛けられる?
セマフォと違い資源の個数を数えるものではなく、複数事象の組合せ成立を1つの待ちで表す機構。データそのものを渡すのはメールボックス/キューで、これも別。AND待ち(指定ビットが全部そろう)とOR待ち(どれか1つ)の取り違えが定番で、待ち解除時にフラグが自動でクリアされるかは指定次第(常にクリアされるわけではない)。
イベントフラグと関連する用語
イベントフラグが出た過去問
リアルタイムシステムにおいて、アプリケーションタスクの要求によって入出力を行うデバイスドライバのタスク部が、要求された処理が完了したときに行う通知処理はどれか。
正解:イベントフラグを使って入出力要求元のタスクに入出力完了を通知する。
要点:完了通知はOSでなく要求元タスクへ同期機能で行う
デバイスドライバのタスク部は、割込みハンドラから処理完了を受け取ったあと、その事実を要求元のアプリケーションタスクへ知らせる必要がある。リアルタイムOSではイベントフラグやセマフォといった同期機能を使い、完了を待って待ち状態になっているタスクを実行可能状態へ戻す。通知の相手はOSやハードウェアではなく、あくまで待っているタスクである。
出典:平成28年度 春期 エンベデッドシステムスペシャリスト試験 am2 問7(IPA)
最終更新:2026-08-25/解説は資格暗記が独自に作成しています。 過去問の出典は各問題に記載のとおりです。