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 saw my lady weep,
    And Sorrow proud to be advanced so
    In those fair eyes where all perfections keep.
    Her face was full of woe;

    But such a woe, believe me, as wins more hearts
    Than Mirth can do with her enticing parts.
    —Unknown. I Saw My Lady Weep (l. 1–6)

    We call it a Society; and go about professing openly the totalest separation, isolation. Our life is not a mutual helpfulness; but rather, cloaked under due laws-of-war, named “fair competition” and so forth, it is a mutual hostility.
    Thomas Carlyle (1795–1881)

    We belong to the community. It is not the tailor alone who is the ninth part of a man; it is as much the preacher, and the merchant, and the farmer. Where is this division of labor to end? and what object does it finally serve? No doubt another may also think for me; but it is not therefore desirable that he should do so to the exclusion of my thinking for myself.
    Henry David Thoreau (1817–1862)