Abstract
Some well-known primitive operations, such as compare-and-swap, can be used, together with read and write, to implement any object in a wait-free manner. However, this paper shows that, for a large class of objects, including counters, queues, stacks, and single-writer snapshots, wait-free implementations using only these primitive operations and a large class of other primitive operations cannot be space efficient: the number of base objects required is at least linear in the number of processes that share the implemented object. The same lower bounds are obtained for implementations of starvation-free mutual exclusion using only primitive operations from this class. For wait-free implementations of a closely related class of one-time objects, lower bounds on the tradeoff between time and space are presented.
Original language | English |
---|---|
Pages (from-to) | 267-277 |
Number of pages | 11 |
Journal | Distributed Computing |
Volume | 18 |
Issue number | 4 |
DOIs | |
State | Published - 1 Mar 2006 |
Externally published | Yes |
Keywords
- Conditionals
- Mutual exclusion
- Object implementations
- Space lower bounds
ASJC Scopus subject areas
- Theoretical Computer Science
- Hardware and Architecture
- Computer Networks and Communications
- Computational Theory and Mathematics