Software Transactional Memory

In computer science, software transactional memory (STM) is a concurrency control mechanism analogous to database transactions for controlling access to shared memory in concurrent computing. It is an alternative to lock-based synchronization. A transaction in this context is a piece of code that executes a series of reads and writes to shared memory. These reads and writes logically occur at a single instant in time; intermediate states are not visible to other (successful) transactions. The idea of providing hardware support for transactions originated in a 1986 paper by Tom Knight. The idea was popularized by Maurice Herlihy and J. Eliot B. Moss. In 1995 Nir Shavit and Dan Touitou extended this idea to software-only transactional memory (STM). STM has recently been the focus of intense research and support for practical implementations is growing.

Read more about Software Transactional MemoryPerformance, Conceptual Advantages and Disadvantages, Composable Operations, Proposed Language Support, Transactional Locking, Implementation Issues, Implementations

Other articles related to "software transactional memory":

Concurrent Haskell - Software Transactional Memory
... The recently introduced Software Transactional Memory (STM) extension to the Glasgow Haskell Compiler reuses the process forking primitives of Concurrent Haskell ...

Famous quotes containing the word memory:

    My stardust melody, the memory of love’s refrain.
    Mitchell Parish (1901–1993)