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 Memory:  Performance, Conceptual Advantages and Disadvantages, Composable Operations, Proposed Language Support, Transactional Locking, Implementation Issues, Implementations

Famous quotes containing the word memory:

    Great music is that which penetrates the ear with facility and leaves the memory with difficulty. Magical music never leaves the memory.
    Thomas Beecham (1879–1961)