Note
When working at the hardware level, Peterson's algorithm is typically not needed to achieve atomic access. Some processors have special instructions, like test-and-set or compare-and-swap, that, by locking the memory bus, can be used to provide mutual exclusion in SMP systems.
Most modern CPUs reorder memory accesses to improve execution efficiency (see memory ordering for types of reordering allowed). Such processors invariably give some way to force ordering in a stream of memory accesses, typically through a memory barrier instruction. Implementation of Peterson's and related algorithms on processors which reorder memory accesses generally requires use of such operations to work correctly to keep sequential operations from happening in an incorrect order. Note that reordering of memory accesses can happen even on processors that don't reorder instructions (such as the PowerPC processor in the Xbox 360).
Most such CPUs also have some sort of guaranteed atomic operation, such as XCHG on x86 processors and Load-Link/Store-Conditional on Alpha, MIPS, PowerPC, and other architectures. These instructions are intended to provide a way to build synchronization primitives more efficiently than can be done with pure shared memory approaches.
Read more about this topic: Peterson's Algorithm
Famous quotes containing the word note:
“I note what you say of the late disturbances in your College. These dissensions are a great affliction on the American schools, and a principal impediment to education in this country.”
—Thomas Jefferson (17431826)
“I note that the Africa loves to depict the grace of reptiles.”
—Zora Neale Hurston (18911960)
“And songs climb out of the flames of the near campfires,
Pale, pastel things exquisite in their frailness
With a note or two to indicate it isnt lost,
On them at least. The songs decorate our notion of the world
And mark its limits, like a frieze of soap-bubbles.”
—John Ashbery (b. 1927)