Skip to content
EntityQ250514· pop 8· linked from 21 articles

Load-Link/Store-Conditional

Sign in to save

In computer science, load-linked/store-conditional (LL/SC), sometimes known as load-reserved/store-conditional (LR/SC), are a pair of instructions used in multithreading to achieve synchronization. Load-link returns the current value of a memory location, while a subsequent store-conditional to the same memory location will store a new value only if no updates have occurred to that location since the load-link. Together, this implements a lock-free, atomic, read-modify-write operation.

Article · Deutsch

Load Link/Store Conditional (LL/SC) (engl. etwa „Referenz laden/bedingt schreiben“) ist ein Paar von Prozessor-Befehlen, die eine read-modify-write Operation implementieren. Der LL-Befehl lädt eine Speicherstelle, ihr Inhalt kann verändert werden, und der SC Befehl schreibt den neuen Wert zurück in die referenzierte Speicherstelle, unter der Bedingung, dass diese nicht verändert wurde. Wurde die Speicherstelle verändert, schlägt die Schreiboperation fehl. Für den Grad der Veränderung gibt es eine starke und eine schwache Semantik (s. u.). LL/SC-Operationen dienen zur Implementierung von atomaren Operationen ohne die Verwendung von Locks (lock-free). Durch die Verknüpfung von Lese- und Schreiboperation ist ihre Semantik enger gefasst als bei der Compare-and-swap-Operation, da diese keinen (nicht-verändernden) Zugriff auf die referenzierte Speicherstelle erkennen kann. Implementierungen des LL/SC-Befehlspaares existieren auf verschiedenen Rechnerarchitekturen, unter anderem:ldl_l/stl_c und ldq_l/stq_c (Alpha-Prozessor), lwarx/stwcx (PowerPC), ll/sc (MIPS-Architektur), und ldrex/strex (ARM-Architektur ab Version 6). Diese Architekturen basieren meist auf der RISC-Philosophie, deren Befehlssatz die Speicherzugriffe auf Lese- und Schreibbefehle reduziert.

Abstract from DBpedia / Wikipedia · CC BY-SA

Available in 8 languages

via Wikidata sitelinks · CC0