Open main menu
Home
Random
Recent changes
Special pages
Community portal
Preferences
About Wikipedia
Disclaimers
Incubator escapee wiki
Search
User menu
Talk
Dark mode
Contributions
Create account
Log in
Editing
Software transactional memory
(section)
Warning:
You are not logged in. Your IP address will be publicly visible if you make any edits. If you
log in
or
create an account
, your edits will be attributed to your username, along with other benefits.
Anti-spam check. Do
not
fill this in!
{{Short description|Concurrency control mechanism in software}} In [[computer science]], '''software transactional memory''' ('''STM''') is a [[concurrency control]] mechanism analogous to [[database transaction]]s for controlling access to [[Shared memory (interprocess communication)|shared memory]] in [[concurrent computing]]. It is an alternative to [[Lock (computer science)|lock-based synchronization]]. STM is a strategy implemented in software, rather than as a hardware component. A transaction in this context occurs when a piece of code 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 (scientist)|Tom Knight]].<ref name=":0">Tom Knight. ''[https://web.archive.org/web/20131101085557/http://web.mit.edu/mmt/Public/Knight86.pdf An architecture for mostly functional languages.]'' Proceedings of the 1986 ACM conference on [[Lisp (programming language)|Lisp]] and functional programming.</ref> The idea was popularized by [[Maurice Herlihy]] and [[J. Eliot B. Moss]].<ref name=Herlihy1993>Maurice Herlihy and J. Eliot B. Moss. ''Transactional memory: architectural support for lock-free data structures.'' Proceedings of the 20th annual international symposium on Computer architecture (ISCA '93). Volume 21, Issue 2, May 1993.</ref> In 1995, [[Nir Shavit]] and Dan Touitou extended this idea to software-only transactional memory (STM).<ref>Nir Shavit and Dan Touitou. ''Software transactional memory.'' Distributed Computing. Volume 10, Number 2. February 1997.</ref> Since 2005, STM has been the focus of intense research<ref>{{cite web|title="software transactional memory" - Google Scholar|url=https://scholar.google.com/scholar?as_ylo=2005&q=%22software+transactional+memory%22|access-date=10 November 2013}}</ref> and support for practical implementations is growing.
Edit summary
(Briefly describe your changes)
By publishing changes, you agree to the
Terms of Use
, and you irrevocably agree to release your contribution under the
CC BY-SA 4.0 License
and the
GFDL
. You agree that a hyperlink or URL is sufficient attribution under the Creative Commons license.
Cancel
Editing help
(opens in new window)