초록
광역 조건식의 계산은 분산 프로그램의 수행을 테스트 또는 디버깅하기 위한 방법으로 활 발히 연구되고 있다. 이제까지 주로 연구된 광역조건식은 AND 또는 OR 광역 조건식 등이 있는데, 특히 AND 광역 조건식은 분산 프로그램의 동시적 조건을 표현하는데 유용하여 효율적인 검색 알고리즘이 활발히 연구되었다. 분산프로그램의 수행오류로서 공유자원의 배타적 접근조건은 가장 중요하고 일반적인 경우라 할 수 있다. 본 논문에서는 XOR 연산을 이용하여 공유자원 프로그램의 오류 검색을 위한 광역조건식을 기술하는 방식에 대해 제안하였다. XOR 연산을 이용한 광역 조건식은 연산자 중 많아야 하나의 지역조건식만이 참일 때 전체 조건식이 참이 되는데 이러한 성질은 여러 프로세스 중 한번에 하나만이 공유자원에 배타적으로 접근할 수 있는 조건을 표현하는데 매우 유용하다. n 개의 프로세스로 이루어진 분산프로그램에서 한개의 공유자원에 대한 배타적 접근 조건을 기술하기 위해서 AND로 연결된 광역조건식을 이용하면 O(n2)개의 광역 조건식이 필요한데 반해 XOR 연산으로는 하나의 조건식으로 나타낼 수 있다. 더구나 XOR 연산을 이용한 광역조건식은 최근 소개된 겹치는 구간의 개념을 활용하면 매우 간단하게 검색할 수 있다. 본 논문에서는 겹치는 구간을 찾는 검색 알고리즘을 소개하고 증명하였다.Abstract Detecting global predicates is an useful tool for debugging and testing a distributed program. Past research has considered several restricted forms of predicates, including conjunctive or disjunctive form of predicates. Especially, conjunctive predicates have attracted main attention not only because they are useful to describe simultaneous conditions in a distributed program, but also because it is possible to find algorithms to evaluate them within reasonable time bound. Detecting errors in accessing shared resources are the most popular and important constraints of distributed programs. In this paper, we introduced an exclusive OR predicates as a model of global predicates to describe shared resource conditions in distributed programs. An exclusive OR predicate holds only when at most one operand is true, which is useful to describe mutual exclusion conditions of distributed programs where only one process should be allowed to access the shared resource at a time. One exclusive OR predicate is enough to describe mutual exclusion condition of n processes with one shared resource, while it takes O(n2) conjunctive predicates. Moreover, exclusive OR condition is easily detectable using the concept of overlapping intervals introduced by Venkatesan and Dathan. An off-line algorithm for evaluating exclusive OR global predicates is presented with a correctness proof.