TY - JOUR
T1 - Implementation of a wait-free synchronization primitive that solves n-process consensus
AU - Feitelson, Dror G.
AU - Rudolph, Larry
PY - 1989/7/24
Y1 - 1989/7/24
N2 - Several synchronization primitives were compared in a recent paper by Herlihy (1988), using their ability to implement wait-free shared data objects as a measure of relative strength. Wait-free n-process consensus was shown to be a useful generic problem, whose solution for different values of n creates a hierarchy of primitives. Well-known primitives such as test-and-set, swap, and fetch-and-add, can only solve 2-process consensus, and thus cannot be used to implement arbitrary wait-free objects. Stronger primitives that solve the n-process version were also suggested in the paper; these include memory-to-memory swap, compare-and-swap, and fetch-and-cons. However, it is not clear that these primitives can be implemented in a satisfactory manner. In this note a new primitive that solves the wait-free n-process consensus problem is presented: the fetch-and-conditional-swap. This primitive is easily implementable by a combining network.
AB - Several synchronization primitives were compared in a recent paper by Herlihy (1988), using their ability to implement wait-free shared data objects as a measure of relative strength. Wait-free n-process consensus was shown to be a useful generic problem, whose solution for different values of n creates a hierarchy of primitives. Well-known primitives such as test-and-set, swap, and fetch-and-add, can only solve 2-process consensus, and thus cannot be used to implement arbitrary wait-free objects. Stronger primitives that solve the n-process version were also suggested in the paper; these include memory-to-memory swap, compare-and-swap, and fetch-and-cons. However, it is not clear that these primitives can be implemented in a satisfactory manner. In this note a new primitive that solves the wait-free n-process consensus problem is presented: the fetch-and-conditional-swap. This primitive is easily implementable by a combining network.
KW - Consensus
KW - read-modify-write
KW - write-free synchronization
UR - http://www.scopus.com/inward/record.url?scp=0024700982&partnerID=8YFLogxK
U2 - 10.1016/0020-0190(89)90034-3
DO - 10.1016/0020-0190(89)90034-3
M3 - ???researchoutput.researchoutputtypes.contributiontojournal.article???
AN - SCOPUS:0024700982
SN - 0020-0190
VL - 32
SP - 81
EP - 83
JO - Information Processing Letters
JF - Information Processing Letters
IS - 2
ER -