Mutual Exclusion - Advanced Mutual Exclusion

Advanced Mutual Exclusion

Synchronization primitives can be built like the examples below by using the solutions explained above:

  • Locks
  • Reentrant mutexes
  • Semaphores
  • Monitors
  • Message passing
  • Tuple space

Many forms of mutual exclusion have side-effects. For example, classic semaphores permit deadlocks, in which one process gets a semaphore, another process gets a second semaphore, and then both wait forever for the other semaphore to be released. Other common side-effects include starvation, in which a process never gets sufficient resources to run to completion, priority inversion in which a higher priority thread waits for a lower-priority thread, and "high latency" in which response to interrupts is not prompt.

Much research is aimed at eliminating the above effects, such as by guaranteeing non-blocking progress. No perfect scheme is known.

Read more about this topic:  Mutual Exclusion

Famous quotes containing the words advanced, mutual and/or exclusion:

    I don’t say ‘tis impossible for an impudent man not to rise in the world, but a moderate merit with a large share of impudence is more probable to be advanced than the greatest qualifications without it.
    Mary Wortley, Lady Montagu (1689–1762)

    Then, anger
    was a crease in the brow
    and silence
    a catastrophe.
    Then, making up
    was a mutual smile
    and a glance
    a gift.
    Now, just look at this mess
    that you’ve made of that love.
    You grovel at my feet
    and I berate you
    and can’t let my anger go.
    Amaru (c. seventh century A.D.)

    All men, in the abstract, are just and good; what hinders them, in the particular, is, the momentary predominance of the finite and individual over the general truth. The condition of our incarnation in a private self, seems to be, a perpetual tendency to prefer the private law, to obey the private impulse, to the exclusion of the law of the universal being.
    Ralph Waldo Emerson (1803–1882)