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:

    ‘Tis of the essence of life here,
    Though we choose greatly, still to lack
    The lasting memory at all clear,
    That life has for us on the wrack
    Nothing but what we somehow chose;
    Thus are we wholly stripped of pride
    In the pain that has but one close,
    Bearing it crushed and mystified.
    Robert Frost (1874–1963)