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:
“Return our hymn,
like echo fling
a sweet song,
answering note for note.”
—Hilda Doolittle (18861961)
“For sounds in winter nights, and often in winter days, I heard the forlorn but melodious note of a hooting owl indefinitely far; such a sound as the frozen earth would yield if struck with a suitable plectrum, the very lingua vernacula of Walden Wood, and quite familiar to me at last, though I never saw the bird while it was making it.”
—Henry David Thoreau (18171862)
“Alexander Woollcott broadcasts the story of the wife who returned a dog to the Seeing Eye with this note attached: I am sending the dog back. My husband used to depend on me. Now he is independent, and I never know where he is.”
—For the State of New Jersey, U.S. public relief program (1935-1943)