跳至內容

Load-link/store-conditional

出自Taiwan Tongues 台語維基
於 2025年8月22日 (五) 20:24 由 TaiwanTonguesApiRobot留言 | 貢獻 所做的修訂 (從 JSON 檔案批量匯入)

(差異) ←上個修訂 | 已批准修訂 (差異) | 最新修訂 (差異) | 下個修訂→ (差異)

佇電腦科學當中,load-linked / store-conditional ( LL / SC ),人嘛會叫做load-reserved / store-conditional ( LR / SC )load-linkstore-conditional(LL / SC) 是一對用佇咧並行仝步存取記憶體的 CPU 指令。Load-link 倒轉來記持體位置的當前值,隨後的 store-conditional 佇咧記持體位置的所在儲存新值(若對 load-link 無去予人改過來)。 這予人用佇實現無鎖演算法佮 read-modify-write 原子操作。

歷史

LL / SC 上代先是 Jensen , Hagensen , Broughton 佇勞倫斯利佛摩國家實驗室為 S 影一 AAP multiprocessor 猶閣設計。

實現

LL / SC 指令予人喝講架構支援:

  • Alpha : ldl \ _ l / stl \ _ c , ldq \ _ l / stq \ _ c
  • PowerPC : lwarx / stwcx , ldarx / stdcx
  • MIPS 架構 : ll / sc
  • ARM 架構 : ldrex / strex ( ARMv 六 , v 七 ) , ldxr / stxr ( ARM version 八 )
  • RISC-V : lr / sc

LL / SC 的硬體實現典型地無允准岫狀 LL / SC 著。岫狀的 LL / SC 機制用於提供 MCAS 原語(多字 Compare-And-Swap,字會當是分布的)。 二空一三年 Trevor Brown , Faith Ellen , Eric Ruppert 軟體實現真濟 LL / SC 擴充。這予人用來最佳化二箍搜揣樹仔。

參見

  • 非常的踢同步
  • 事務記持體(Transactional memory)

參考文獻