초록 close

분산시스템에서는 어느 한 사이트가 전체 시스템의 상태 정보를 알 수 없기 때문에 분산 교착상태의 발견은 어려운 문제로 알려져 왔다. 본 논문은 분산 교착상태의 발견 및 해결을 위한 시간 효율적인 알고리즘을 제안한다. 알고리즘의 시작노드는 교착상태 발견을 위한 메시지를 전파하고 이에 대한 응답 정보로부터 wait-for graph를 구축한다. 제시한 알고리즘은 기존에 비해 교착상태를 발견하는데 걸리는 시간을 반으로 단축시키는 장점이 있다. 또한 대부분의 연구결과가 단지 알고리즘의 시작노드가 교착상태에 속하였는지의 여부를 판단할 수 있는 것과는 달리 본 알고리즘은 알고리즘을 수행하는 모든 노드들에 대해 그같은 결과를 말해준다. 이러한 특성으로 인해 교착상태는 보다 신속히 발견될 수 있다. 더우기 이제까지 교착상태의 해결에 대해 무관심하였거나 알고리즘의 시작노드를 중지시킴으로써 해결하였던 것에 반해 본 알고리즘은 효율적이고 상세한 교착상태 해결방법을 제시하였다.


Deadlock detection in distributed systems is considered difficult since no single site knows the exact information on the whole system state. This paper proposes a time-efficient algorithm for distributed deadlock detection and resolution. The initiator of the algorithm propagates a deadlock detection message and builds a reduced wait-for graph from the information carried by the replies. The time required for deadlock detection is reduced to half of that of the other algorithms. Moreover, any deadlock reachable from the initiator is detected whereas most previous algorithms only find out whether the initiator is involved in deadlock. This feature accelerates the detection of deadlock. Resolution of the detected deadlock is also simplified and precisely specified, while the current algorithms either present no resolution scheme or simply abort the initiator of the algorithm upon detecting deadlock.