ARM體系結構中原子操作 ATOMIC 的實現

2021-04-12 22:38:59 字數 545 閱讀 8027

關於整數 的原子操作,對於atomic_t型別,一直以來,記得書上說的都是要不cpu體系結構本身支援簡單的原子操作,要不提供了鎖記憶體匯流排功能,可以在操作期間,防止對資料的訪問發生。

今天突然想到,arm架構本身不提供鎖記憶體匯流排功能,也沒有類似的原子操作的指令,那麼如何實現原子操作呢?看了一下**,原來是通過禁止中斷來實現的,由於arm體系結構不支援**p架構,所以禁止了中斷也就杜絕了**併發的可能性,從而實現原子操作。

另armv6以上的架構使用了 ldrex和strex指令來實現對某個記憶體位址的獨佔訪問,從而避免了對中斷的禁止操作。(這塊從指令的解釋上看猜測是這樣的,沒有太多了解)

• ldrex{} ,

this performs a load, then sets a monitor to 「watch」 the address

• strex {} , ,

this performs a store and returns 「success」 in rd if no intervening access

detected by the monitor.

ARM體系結構

arm是 advanced risc machines 高階精簡指令系統處理器 的縮寫,是arm公司提供的一種微處理器智財權 ip 核 arm既可以認為是乙個公司的名字,也可以認為是對一類微處理器的通稱,還可以認為是一種技術的名字 arm微處理器的特點 1 體積小 低功耗 低成本 高效能 2 支援t...

ARM體系結構

一 arm公司簡介 arm公司成立於1990年11月,主要設計arm系列risc處理器核心 arm公司主要做授權,不生產任何一款具體的晶元。二 arm公司產業鏈 arm 將技術授權給合作廠商 廠商 生產各具特色的具體晶元,廠商就包括飛利浦 英特爾 三星等 三 arm微處理器的應用領域 工業控制 無線...

ARM體系結構

arm 核心採用精簡指令集結構 risc,reduced instruction set computer 體系結構。其目標是設計出一套能在高時鐘頻率下單週期執行 簡單而有效的指令集,risc 的設計重點在於降低硬體執行指令的複雜度,這是因為軟體比硬體容易提供更大的靈活性和更高的智慧型。與其相對的傳...