平成26年度春期 エンベデッドシステムスペシャリスト試験 午前II 問7
【問題7】
二つのタスクが共有する二つの資源を排他的に使用するとき,デッドロックが発生するおそれがある。このデッドロックの発生を防ぐ方法はどれか。
【解説】
デッドロックの発生を防ぐためには、次の条件のいずれかを回避する必要があります:
- 相互排他: 資源が排他的に使用されること。
- 保持と待機: 資源を保持したまま他の資源を待機すること。
- 不可奪性: 使用中の資源を強制的に奪取できないこと。
- 循環待機: 複数のプロセス間で資源の待機が循環していること。
本問では「資源獲得の順序を統一」することにより、「循環待機」の条件を回避することが可能です。したがって、正解はイです。
【答え】
イ: 資源獲得の順序を両方のタスクで同じにする。
出典:平成26年度 春期 エンベデッドシステムスペシャリスト試験 午前II 問7