Synchronization
Synchronization is the coordination of occurrences to operate in unison with respect to time. This process can be a premeditated arrangement set forth on a parallel time scape, or it can be an observable coincidence in eventuality.
Systems operating with all their parts in synchrony are said to be
synchronous or
in sync.Some systems may be only approximately synchronized, or
plesiochronous.
For some applications relative offsets between events need to be determined, for others only the order of the event is important. The idea of
simultaneity has many difficulties, both in practice and theory. Whilst well-designed time synchronization is an important tool for creating reliable systems, excessive use of synchronization where it is not necessary can make systems less fault-tolerant, and hence less reliable.
It is an important concept in the following fields:
*
Computer scienceIn computer science, especially parallel computing, synchronization means the coordination of simultaneous threads or processes to complete a task in order to get correct runtime order and avoid unexpected race conditions.*
Physics*
Telecommunication*
Cryptography*
Multimedia*
Photography*
Music (
rhythm)
*
SynthesizersSynchronization has several subtly distinct sub-concepts:
*
Rate synchronization*
Phase synchronization*
Time offset synchronization*
Time order synchronization* Synchronization of
image and
sound in
sound film.
* Synchronization is important in fields such as
digital telephony,
video and
digital audio where streams of sampled data are manipulated.
*
Arbiters are needed in digital electronic systems such as
microprocessors to deal with asynchronous inputs. There are also electronic digital circuits called
synchronizers that attempt to perform arbitration in one clock cycle. Synchronizers, unlike arbiters, are prone to failure. (See
metastability in electronics).
*
Encryption systems usually require some synchronization mechanism to ensure that the receiving cipher is decoding the right bits at the right time.
* Automotive
transmissions contain
synchronizers which allow the toothed rotating parts (gears and splined shaft) to be brought to the same rotational velocity before engaging the teeth.
* Synchronization is also important in
industrial automation applications.
*
Time codes are often used as a means of synchronization in
film,
video, and
audio applications.
* Technologies such as
GPS and
NTP provide real-time access to a close approximation to the
UTC timescale, and are used for many terrestrial synchronization applications.
*
Flash photography, see
Flash synchronization*
File synchronization is used to maintain the same version of files on multiple computing devices.
* Software applications must occasionally incorporate application-specific data synchronization in order to mirror changes over time among multiple data sources at a level more granular than
File synchronization. An example use of this is the
Data Synchronization specification of the
Open Mobile Alliance, which continues the work previously done by the
SyncML initiative.
SyncML was initially proposed to synchronize changes in personal address book and calendar information from computers to mobile phones, but has subsequently been used in applications that synchronize other types of data changes among multiple sources, such as
project status changes.
* Video or audio synchronization of media data that stored on different computers via a network like the software syncMaker PRO [
1] does.
*
Code synchronization*
Asynchrony *
Polychronization*
Time*
Time transfer*
Timecode *
Phase-locked loops
*
Flywheel*
Synchronizer*
Mutual exclusion*
Homochronous*
Clock synchronization*
Synchronization in telecommunicationsIn the field of video and audio engineering:
*
Genlock *
Jam syncOrder synchronization and related topics:
*
Rendezvous problem*
Interlocking *
Race condition*
Concurrency control*
Room synchronization*
Transient blocking synchronization*
Comparison of synchronous and asynchronous signallingCompare with:
*
Synchronicity, a mystical notion due to
Carl Jung.