デッドロック |
辞書:電算用語の基礎知識 計算機OS機能編 (TCOS) |
読み:デッドロック |
外語:dead lock |
品詞:名詞 |
二つ以上のプロセスが互いに占有している資源にアクセスを試みてしまい、それぞれ相手側の要求が完了しないために資源の解放もできず永久に待ち状態になってしまうこと。英語の原義では「行き詰まり」。
|
概要 |
例えばファイルAとファイルBを排他的に用いるとする。
プロセス甲がファイルAをロックしてファイルBのロック解放を待つ、プロセス乙がファイルBをロックしてファイルAのロック解放を待つ、という状況になると、半永久的にそれ以上処理が進まなくなってしまう。これがデッドロックである。
特徴 |
身近な例では、CGIの掲示板プログラムがある。
二人が同時に書き込むとファイルが壊れてしまうので、書き込みは一人ずつ処理するよう、書き込むファイルにロックをかけることが多い。
しかしもしある人の書き込み処理でエラーが起き、そのプログラムがロックを解除せずに不正終了してしまうと、次の人が掲示板に書き込もうとしても前の書き込みが終了していないように見えるので、いつになっても書き込めずエラーになってしまう。これもデッドロックの一例である。実際にはこうならないようにプログラムを書かないといけないわけである。
リンク |
通信用語の基礎知識検索システム WDIC Explorer Ver 7.04a (27-May-2022) Search System : Copyright © Mirai corporation Dictionary : Copyright © WDIC Creators club |