Vitajte na [www.pocitac.win] Pripojiť k domovskej stránke Obľúbené stránky
Takto to funguje:
1. LACK LINK (LL): Táto inštrukcia načíta hodnotu umiestnenia pamäte do registra. Kriticky tiež nastaví interný príznak alebo zámok spojený s týmto umiestnením pamäte. Táto vlajka naznačuje, že tento konkrétny procesor si nárokoval miesto pre potenciálnu aktualizáciu.
2. Výpočet: Procesor potom vykoná výpočet na zloženej hodnote v registri.
3. ukladajte podmienené (sc): Táto inštrukcia sa pokúša uložiť upravenú hodnotu z registra späť do umiestnenia pamäte. Úspech tejto operácie závisí od toho, či interný príznak/zámok nastavený inštrukciou LL stále drží rovnakým procesorom. Ak je príznak stále nastavený (čo znamená, že medzitým žiadny iný procesor nemá prístup k umiestneniu pamäte), inštrukcia SC uspeje a vlajka je vyčistená. Ak príznak nie je nastavený (pretože iný procesor vykonal operáciu LL/SC na rovnakom mieste), inštrukcia SC zlyhá a umiestnenie pamäte zostáva nezmenené.
V podstate LL/SC poskytuje mechanizmus na testovanie a modifikáciu atómového umiestnenia pamäte. To znamená, že celá operácia (čítanie, modifikácia, zápis) sa považuje za jednu, nedeliteľnú jednotku, predchádzanie rasovým podmienkam a zabezpečenie integrity údajov. Bez LL/SC by súbežný prístup mohol viesť k nepredvídateľným a nesprávnym výsledkom v dôsledku prekladaných čítaní a zápisov.
Mnoho architektúr ponúka pokyny LL/SC alebo ekvivalentné mechanizmy na uľahčenie dátových štruktúr a algoritmov bez zámku, ktoré sa vyhýbajú režijnej réžii tradičných mutexov alebo semaforov. Použitie LL/SC však vyžaduje starostlivé programovanie na zvládnutie potenciálu zlyhaní SC a implementáciu vhodných mechanizmov opakovania.