核心概念
ロック共有システムにおけるデッドロック回避のための分散制御合成問題は、プロセスのロック使用制限がない場合は判定不能であるが、プロセスあたりのロック数を2つに制限するか、ネストロックの使用を制限することで判定可能になる。
要約
分散制御合成におけるロック共有システムの複雑性分析
本論文は、ロック共有システムにおけるデッドロック回避のための分散制御合成問題の決定可能性と計算量について考察しています。
ロック共有システムとは、複数のプロセスが共通の資源にアクセスするためにロックを使用するシステムです。デッドロックとは、複数のプロセスが互いに待ち状態になり、処理が進まなくなる状態を指します。分散制御合成問題とは、各プロセスがローカルな情報に基づいて動作する分散システムにおいて、グローバルなデッドロックが発生しないように各プロセスの制御戦略を合成する問題です。
本論文は、ロック共有システムにおけるデッドロック回避のための分散制御合成問題に対して、以下の貢献をしています。
プロセスあたりのロック数による複雑性分析
プロセスが任意の数のロックを使用できる場合、デッドロック回避のための分散制御合成問題は判定不能であることを示しています。
プロセスあたりのロック数を2つに制限した場合(2LSS)、問題はΣP
2 -完全になることを示しています。
さらに、2LSSにおいて、各プロセスがローカルにライブであるという制限を加えた場合、問題はNPになることを示しています。
また、2LSSにおいて、各プロセスが排他的にロックにアクセスするという制限を加えた場合、問題はPtimeになることを示しています。
ネストロックの使用による複雑性分析
ネストロックの使用を制限した場合、問題はNExpTime-完全になることを示しています。