Synchronization (computer science): Difference between revisions

Content deleted Content added
Data synchronization: added a citation
m Fixing links to disambiguation pages, replaced: handshake at a certain point, in order to reach an agreement or commit to a certain sequence of action. ''Data synchronization'' refers
Line 1:
{{short description|Concept in computer science, referring to processes, or data}}
{{Use American English|date=October 2020}}
{{RefimproveMore citations needed|date=November 2014}}
In [[computer science]], '''synchronization''' refers to one of two distinct but related concepts: synchronization of [[Process (computer science)|processes]], and synchronization of [[Dataset|data]]. ''Process synchronization'' refers to the idea that multiple processes are to join up or [[HandshakingHandshake (computing)|handshake]] at a certain point, in order to reach an agreement or commit to a certain sequence of action. ''[[Data synchronization]]'' refers to the idea of keeping multiple copies of a dataset in coherence with one another, or to maintain [[data integrity]]. Process synchronization primitives are commonly used to implement data synchronization.
 
==The need for synchronization==
Line 124:
* [[interrupt|interrupt masks]], which protect access to global resources (critical section) on uniprocessor systems;
* [[spinlock]]s, which prevent, in multiprocessor systems, spinlocking-thread from being preempted;
* [[dynamic dispatch]]ers{{cncitation needed|date=June 2022}}, which act like [[mutual exclusion|mutex]]es, [[Semaphore (programming)|semaphores]], [[Event (computing)|event]]s, and [[timer]]s.
 
====Synchronization in Linux====