In computer science, called an atomic operation (from the Greek άτομο átomo, indivisible ') a composite of individual operations, which can be considered as a logical unit and only fails as a whole or can be executed successfully.

The term is mainly used in database theory and to certain CPU instructions.

Atomic operations at the CPU level

Atomic operations are primarily used to implement locking mechanisms ( locking) that are in the synchronization of data and processes ( see process synchronization ) are used. Another variant is the non-blocking synchronization of data structures, objects can be modified only by atomic operations, and the explicit locks the objects will be obsolete.

Typical CPU instructions to implement atomic operations on current processors, for example, compare- and- swap or Load-Link/Store-Conditional pairs of instructions on RISC architectures.

Atomic database operations

A number of changes to a database can be grouped into a transaction that is successful either as a whole or can be reversed by a rollback. Others, in addition to the desired atomicity properties of transactions are usually grouped under the acronym ACID.

  • Parallel processing
  • Operating system theory
  • Database Theory