A method, for executing a load locked and a store conditional instruction
in a processor, achieves an atomic read-write operation to a memory block.
First the load locked instruction is executed to read a memory block, and
the processor in response to executing the load locked instruction issues
a read modify system command to read the block and to take ownership of
the block by the processor, and also sets a lock flag for the address of
the memory block, and writes a value of the memory block into a cache of
the processor as a cache copy of the memory block. The lock flag, upon
receipt of an invalidate message by the processor for the cache copy of
the memory block, is reset if any invalidate messages for the memory block
are received by the processor. The processor waits for a selected time
interval before the processor surrenders ownership of the memory block
upon receipt of an ownership request message, if any is received by the
processor after execution of the load locked instruction. The processor
executes the store conditional instruction, and the processor in response
to executing the store conditional instruction tests the lock flag, and if
the lock flag is set, writing to the cache copy of the memory block. The
processor ends, in the event that the lock flag is reset, the store
conditional instruction and does not write to the cache copy of the memory
block.
Een methode, voor het uitvoeren van een gesloten lading en een opslag voorwaardelijke instructie in een bewerker, bereikt een atoom lees-schrijfverrichting aan een geheugenblok. Eerst wordt de lading gesloten instructie uitgevoerd om een geheugenblok te lezen, en de bewerker in antwoord op het uitvoeren van de lading gesloten instructie geeft gelezen uit wijzigt systeembevel om het blok te lezen en eigendom van het blok te nemen door de bewerker, en ook plaatst een slotvlag voor het adres van het geheugenblok, en schrijft een waarde van het geheugenblok in een geheim voorgeheugen van de bewerker als geheim voorgeheugenexemplaar van het geheugenblok. De slotvlag, op ontvangstbewijs van maakt bericht door de bewerker voor het geheim voorgeheugenexemplaar van ongeldig het geheugenblok, wordt teruggesteld als om het even welk berichten voor het geheugenblok worden ontvangen door de bewerker ongeldig maken. De bewerker wacht op een geselecteerd tijdinterval alvorens de bewerker eigendom van het geheugenblok op ontvangstbewijs van een bericht van het eigendomsverzoek overgeeft, als om het even welk door de bewerker na uitvoering van de lading gesloten instructie wordt ontvangen. De bewerker voert de opslag voorwaardelijke instructie uit, en de bewerker in antwoord op het uitvoeren van de opslag voorwaardelijke instructie test de slotvlag, en als de slotvlag wordt geplaatst, schrijvend aan het geheim voorgeheugenexemplaar van het geheugenblok. De bewerker beëindigt, in het geval dat de slotvlag, de opslag voorwaardelijke instructie wordt teruggesteld en niet aan het geheim voorgeheugenexemplaar van het geheugenblok schrijft.