ソフトウェア

基本情報技術者試験OSの排他制御で用いるセマフォにおいて、資源を確保しようとするP操作の動作

テクノロジ系ソフトウェア難易度:normal
OSの排他制御で用いるセマフォにおいて、資源を確保しようとするP操作の動作として最も適切なものはどれか。
セマフォ値を1だけ増やし、待機している他のプロセスがあればその一つを待ち行列から起こして再開させる
セマフォ値を変えずに現在値を読み取って呼出し元へ返すだけである
セマフォ値を1だけ減らし、結果が負になる場合はそのプロセスを待ち状態にする
セマフォ値を初期値へ戻し待機列を一括で解放する
正解
ウ.セマフォ値を1だけ減らし、結果が負になる場合はそのプロセスを待ち状態にする

P操作(wait)は資源獲得を表し、セマフォ値を1減らす。減算後に値が負になれば利用可能資源がないため、そのプロセスを待ち状態にして待ち行列につなぐので正しい。

?選択肢ごとの解説

ア ×セマフォ値を1増やし待機プロセスを起こすのはV操作(signal)の動作であり、資源の解放側でありP操作とは逆である。
イ ×値を変えずに読み取るだけでは資源の確保も解放も行えず、排他制御として機能しないためセマフォ操作の定義に反する。
ウ ○P操作(wait)は資源獲得を表し、セマフォ値を1減らす。減算後に値が負になれば利用可能資源がないため、そのプロセスを待ち状態にして待ち行列につなぐので正しい。
エ ×初期値へ戻して待機列を一括解放する操作はセマフォの初期化や強制リセットに近く、1件ずつ資源を確保するP操作の動作ではない。
この問題の「深掘り・誤答の完全解説・覚え方」は、登録すると読めます。

基本情報技術者試験は全4,036問。公開しているのはその一部で、登録すると残りも一問ごとにAI解説つきで解けます。SRS暗記カード・全真模試・弱点診断まで。

登録は1分・クレジットカード不要。無料のまま練習・暗記カード・模試まで使えます。

作成・校閲:ukamiru編集部 · 基本情報技術者試験 過去問 · fe-a3-0217

【基本情報技術者試験】OSの排他制御で用いるセマフォにおいて、資源を確保しようとす…|正解「セマフォ値を1だけ減らし、結…」|ukamiru 過去問