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.
- Ability105616246
- Abstraction100002137
- Act100030358
- Activity100407535
- Algorithm105847438
- Cognition100023271
- Creativity105624700
- Event100029378
- Invention105633385
- Procedure101023820
- PsychologicalFeature100023100
- Rule105846932
- software
- WikicatAlgorithms
- WikicatConcurrencyControlAlgorithms
- WikicatDutchInventions
- YagoPermanentlyLocatedEntity
- 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
- 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
- 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