ソフトウェア

基本情報技術者試験ミューテックス」の問題

テクノロジ系ソフトウェア難易度:normal
排他制御に用いるミューテックスが、計数型セマフォと比べて持つ特徴として最も適切なものはどれか。
任意の正の初期値を設定して同時に複数のプロセスへ資源を許可できる
ロックを獲得していないプロセスでも自由に解放(アンロック)を実行できる
割込みを禁止することでのみ実装され、ソフトウェアからは操作できない
同時に1つのプロセスだけが保持でき、原則としてロックした本人が解放する
正解
同時に1つのプロセスだけが保持でき、原則としてロックした本人が解放する

ミューテックス(MUTual EXclusion)は資源を一度に1プロセスだけに許す相互排他用の仕組みで、所有権を持ちロックした本人が解放するのが原則である。設問の特徴に合致するため正しい。

?選択肢ごとの解説

ア ×初期値を正にして複数へ同時許可できるのは計数型セマフォの特徴であり、同時保持を1に限るミューテックスとは異なる。
イ ×獲得していないプロセスが自由に解放できるのは所有権を持たないセマフォ的な性質で、所有者が解放するミューテックスの原則に反する。
ウ ×割込み禁止だけで実装されソフトから操作できないという説明は誤りで、ミューテックスはAPIを通じて獲得・解放を行える。
エ ○ミューテックス(MUTual EXclusion)は資源を一度に1プロセスだけに許す相互排他用の仕組みで、所有権を持ちロックした本人が解放するのが原則である。設問の特徴に合致するため正しい。

くわしく

ミューテックスは値が0/1の二値で所有権を持つ排他専用機構、セマフォは資源数を数える同期/排他両用の機構である。所有権があるため優先度継承などデッドロック緩和策を適用しやすい点もミューテックスの利点である。

本番での押さえどころ

試験のコツ

『ミューテックス=鍵を持つ本人だけが開ける(所有権あり・同時1)』『セマフォ=入場券の枚数管理(計数可)』と役割で区別する。

覚え方

MUTEX=MUTual EXclusionの略で『相互排他』そのもの、1部屋に1人と覚える。

よくある誤り

『二値セマフォ=ミューテックス』と単純に同一視する誤りが多いが、所有権の有無という本質的な差を見落としている。

ソフトウェアの他の問題

この問題を、AIの8-ways解説つきで。

基本情報技術者試験の演習を、一問ごとに「なぜ」まで。まずは無料で。

無料ではじめる →

ukamiru 過去問 · 基本情報技術者試験 · fe-a3-0218

【基本情報技術者試験】ミューテックスの問題 — 解答・解説|ukamiru 過去問