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:

    Within the memory of many of my townsmen the road near which my house stands resounded with the laugh and gossip of inhabitants, and the woods which border it were notched and dotted here and there with their little gardens and dwellings, though it was then much more shut in by the forest than now.
    Henry David Thoreau (1817–1862)