Open main menu
Home
Random
Recent changes
Special pages
Community portal
Preferences
About Wikipedia
Disclaimers
Incubator escapee wiki
Search
User menu
Talk
Dark mode
Contributions
Create account
Log in
Editing
Dekker's algorithm
(section)
Warning:
You are not logged in. Your IP address will be publicly visible if you make any edits. If you
log in
or
create an account
, your edits will be attributed to your username, along with other benefits.
Anti-spam check. Do
not
fill this in!
{{Short description|Mutual exclusion 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 people|Dutch]] [[mathematician]] [[Theodorus Dekker|Th. J. Dekker]] by [[Edsger W. Dijkstra]] in an unpublished paper on sequential process descriptions<ref>{{Cite EWD|35|Over de sequentialiteit van procesbeschrijvingen}} (undated, 1962 or 1963); English translation [http://www.cs.utexas.edu/users/EWD/translations/EWD35-English.html About the sequentiality of process descriptions]</ref> and his manuscript on [[cooperating sequential processes]].<ref>{{Cite EWD|123|Cooperating sequential processes}} (September 1965)</ref> It allows two threads to share a single-use resource without conflict, using only [[Shared memory (interprocess communication)|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.
Edit summary
(Briefly describe your changes)
By publishing changes, you agree to the
Terms of Use
, and you irrevocably agree to release your contribution under the
CC BY-SA 4.0 License
and the
GFDL
. You agree that a hyperlink or URL is sufficient attribution under the Creative Commons license.
Cancel
Editing help
(opens in new window)