平成30年 春期 エンベデッドシステムスペシャリスト 午前II 問8

セマフォに関する記述のうち、適切なものはどれか。

 ア  V操作は、待ち状態のプロセスがあれば、そのプロセスを一つ実行可能状態へ移す。
 イ  あるセマフォに対してP操作を行うためには、それに先立ってV操作が実行されていなければならない。
 ウ  同一のセマフォに対して、V操作を連続して実行することはできない。
 エ  一つのプログラム内では、同時に使用できるセマフォの数は一つだけである。


答え ア


解説
セマフォを使用するときは共通領域にセマフォ変数を確保し、資源を同時に使用できる最大数を設定します。(排他制御なら1になります。)
共有資源を使いたいタスクは、セマフォ変数の値を1減らすP操作行います。
この時、セマフォ変数が0でなければ減算が行われ、資源を利用することが可能になります。
セマフォ変数の値が0のときは、資源が他のタスクに使われているので、待ち状態になります。(場合によってはエラーにすることなどもある。)
資源を使い終わったタスクはセマフォ変数の値を1増加させるV操作を行います。


キーワード
・セマフォ

キーワードの解説

戻る 一覧へ 次へ