日韩性视频-久久久蜜桃-www中文字幕-在线中文字幕av-亚洲欧美一区二区三区四区-撸久久-香蕉视频一区-久久无码精品丰满人妻-国产高潮av-激情福利社-日韩av网址大全-国产精品久久999-日本五十路在线-性欧美在线-久久99精品波多结衣一区-男女午夜免费视频-黑人极品ⅴideos精品欧美棵-人人妻人人澡人人爽精品欧美一区-日韩一区在线看-欧美a级在线免费观看

歡迎訪問 生活随笔!

生活随笔

當前位置: 首頁 > 编程资源 > 编程问答 >内容正文

编程问答

Exclusive monitor在spinlock中的应用

發布時間:2025/3/21 编程问答 29 豆豆
生活随笔 收集整理的這篇文章主要介紹了 Exclusive monitor在spinlock中的应用 小編覺得挺不錯的,現在分享給大家,幫大家做個參考.

👉👉👉 個人博客筆記導讀目錄(全部) 👈👈👈
.
說明:
在默認情況下,本文講述的都是ARMV8-aarch64架構,linux kernel 5.14

目錄

        • 1、Exclusive monitor概念
        • 2、獨占訪問在spinlock中的應用

1、Exclusive monitor概念

ARMv6 架構時引入了對內存位置進行獨占訪問的概念,提供了更靈活的原子內存更新。對應的獨占訪問的指令是:LDREX 和STREX. 而在armv8架構中,這兩個指令變成了LDXR和STXR

獨占監視器是一個簡單的狀態機,具有open和exclusive的兩種狀態。 為了支持處理器之間的同步,系統必須實現兩組監視器,local和global。 Load-Exclusive 操作將監視器更新為exclusive狀態。 Store-Exclusive 操作訪問監視器以確定它是否可以成功完成。 只有當所有訪問的獨占監視器都處于獨占狀態時,Store-Exclusive 才能成功。

LDXR Wt, [base{,#0}]
(1)、從base地址處讀取一個數字,存放到Wt寄存器中;
(2)、將Monitor變成exclusive狀態

STXR Ws, Wt, [base{,#0}]
(1)、將Wt中的數據寫入到base地址處,如果成功Ws返回0,否則返回1;
(1)、將Monitore從exclusive狀態切換成open, 如果切換成功,則說明寫入成功,Ws返回0; 如果切換失敗,則數據不會寫入到內存,Ws返回1

注意事項:

  • 以上獨占機制只適用normal memory,如果是device memory則不會啟用exclusive訪問機制。
  • 如果是配置成shareable的memory,則會啟用global monitor,如果配置成的是non-shareable memory,則只有local monitor生效

2、獨占訪問在spinlock中的應用

總結

以上是生活随笔為你收集整理的Exclusive monitor在spinlock中的应用的全部內容,希望文章能夠幫你解決所遇到的問題。

如果覺得生活随笔網站內容還不錯,歡迎將生活随笔推薦給好友。