Dekker's algorithm

Dekker's algorithm

Dekker's algorithm is the first known correct solution to the mutual exclusion problem in concurrent programming where processes only communicate via shared memory. The solution is attributed to Dutch mathematician Th. J. Dekker by Edsger W. Dijkstra in an unpublished paper on sequential process descriptions and his manuscript on cooperating sequential processes. It allows two threads to share a single-use resource without conflict, using only shared memory for communication.

Comment
enDekker's algorithm is the first known correct solution to the mutual exclusion problem in concurrent programming where processes only communicate via shared memory. The solution is attributed to Dutch mathematician Th. J. Dekker by Edsger W. Dijkstra in an unpublished paper on sequential process descriptions and his manuscript on cooperating sequential processes. It allows two threads to share a single-use resource without conflict, using only shared memory for communication.
Depiction
Dekker's Algorithm.svg
Has abstract
enDekker's algorithm is the first known correct solution to the mutual exclusion problem in concurrent programming where processes only communicate via shared memory. The solution is attributed to Dutch mathematician Th. J. Dekker by Edsger W. Dijkstra in an unpublished paper on sequential process descriptions and his manuscript on cooperating sequential processes. It allows two threads to share a single-use resource without conflict, using only shared memory for communication. It avoids the strict alternation of a naïve turn-taking algorithm, and was one of the first mutual exclusion algorithms to be invented.
Hypernym
Solution
Is primary topic of
Dekker's algorithm
Label
enDekker's algorithm
Link from a Wikipage to another Wikipage
Busy wait
Busy waiting
C++11
Category:Articles with example pseudocode
Category:Concurrency control algorithms
Category:Edsger W. Dijkstra
Concurrent programming
CPU
Critical section
Deadlock
Dutch people
Edsger W. Dijkstra
Eisenberg & McGuire algorithm
File:Dekker's Algorithm.svg
Infinite loop
Lamport's bakery algorithm
Loop-invariant code motion
Mathematician
Memory barrier
Memory ordering
Mutual exclusion
Peterson's algorithm
Pseudocode
Resource starvation
Semaphore (programming)
Shared memory (interprocess communication)
Symmetric multiprocessing
Szymański's algorithm
Test-and-set
Theodorus Dekker
Volatile variable
SameAs
Algorisme de Dekker
Algorithme de Dekker
Algoritma dekker
Algoritmo de Dekker
Algoritmo di Dekker
Algorytm Dekkera
Dekerov algoritam
Dekker's algorithm
Dekker-Algorithmus
Dekker algoritması
ETTn
m.0962r
Q1183654
Алгоритм Декера
Алгоритм Деккера
Деккерийн алгоритм
Դեկկերի ալգորիթմ
الگوریتم دکر
デッカーのアルゴリズム
데커의 알고리즘
Subject
Category:Articles with example pseudocode
Category:Concurrency control algorithms
Category:Edsger W. Dijkstra
Thumbnail
Dekker's Algorithm.svg?width=300
WasDerivedFrom
Dekker's algorithm?oldid=1123217173&ns=0
WikiPageLength
8444
Wikipage page ID
36826
Wikipage revision ID
1123217173
WikiPageUsesTemplate
Template:Edsger Dijkstra
Template:Mono
Template:Reflist
Template:Unreferenced section