Minimal Threshold Separators and Memory Requirements for Synchronization

Suppose that in a system of asynchronous parallel processes, certain pairs of processes mutually exclude one another (must not be in their critical sections simultaneously). This situation is modeled by a graph in which each process is represented by a vertex and each mutually excluding pair is represented by an edge. Henderson and Zalcstein have observed that if this graph is a threshold graph, then mutual exclusion can be managed by simple entrance and exit protocols using ${\bf PV}$-chunk operations on a single shared variable whose possible values range from zero to t, the minimal threshold separator number of the graph. A new expression is given for this separator t of a threshold graph in terms of the normal decomposition of the threshold graph given by Zalcstein and Henderson. It is shown that $t + 1$ values would be needed in the shared variable even if the mutual exclusion were being managed by the Fischer-Lynch test-and-set operator, which is considerably less restrictive than ${\bf PV}$-chunk.