色哟哟视频在线观看-色哟哟视频在线-色哟哟欧美15最新在线-色哟哟免费在线观看-国产l精品国产亚洲区在线观看-国产l精品国产亚洲区久久

0
  • 聊天消息
  • 系統消息
  • 評論與回復
登錄后你可以
  • 下載海量資料
  • 學習在線課程
  • 觀看技術視頻
  • 寫文章/發帖/加入社區
會員中心
創作中心

完善資料讓更多小伙伴認識你,還能領取20積分哦,立即完善>

3天內不再提示

ARM系列--同步原語

安芯教育科技 ? 來源:老秦談芯 ? 2023-01-05 14:18 ? 次閱讀

在具有多個執行線程的系統中,某些資源可能不能同時被訪問或者修改。這些資源可以是外圍設備或內存緩沖區和數據結構,例如打印機不會在一個時刻響應多個訪問。這就需要一些同步機制去處理這些資源的同時控制(concurrency control)問題。需要注意的是,這里說的“同步”,不是同時的意思,而是協同的意思。某個資源使用受限的情況下,你用完了我用,大家協同工作。

可以通過“鎖(lock)”機制來實現同步,對這些不能同時被訪問的共享資源提供一個鎖。線程在訪問這些資源之前必須先獲得鎖權限。這時,如果其它線程也想申請鎖,會發現鎖被占用,只能等待鎖被釋放。擁有鎖的線程在訪問結束后,必須釋放鎖,以便其它的線程可以繼續訪問。

可以使用內存中的變量來實現簡單的鎖,該變量可以包含兩個值(狀態):LOCKED和UNLOCKED。進程如果發現這個鎖是UNLOCKED狀態,即可以修改為LOCKED,并擁有該資源的訪問權限。

5a0693ee-8cb5-11ed-bfe3-dac502259ad0.png

圖中的整個過程分為三個步驟:

讀內存中的變量,并做狀態比較;

修改寄存器值;

寫內存變量。

在具有多個核或線程的系統中,此方法容易受到另一個線程的攻擊,即在變量值的第一次讀取和回寫之間修改內存中的值。

這個問題可以用軟件解決,也可以用額外的硬件功能來解決。一種解決方案可以是使“讀-比較-修改-寫(read-compare-modify-write)”的原子操作指令。ARM架構的早期版本使用SWP指令實現類似的功能。

ARMv8-A使用下面要介紹的,一種特殊類型的加載和存儲指令來檢測內存中的值自上次讀取以來是否發生了變化。ARMv8-A 64位指令集提供了兩條獨占指令LDXR(Load Exclusive)和STXR(Store Exclusive)。

當使用LDXR指令讀取地址時,會將其標記為獨占訪問。如果使用STXR指令向標記為獨占的地址寫入,則會清除獨占狀態。嘗試使用STXR指令向未標記為獨占的地址寫入將會失敗。地址的獨占狀態由稱為獨占監視器(Exclusive Monitor)的硬件維護。

使用獨占load/store后的鎖實現:

5a2e9326-8cb5-11ed-bfe3-dac502259ad0.png

鎖值的更新不能保證是原子的,但現在可以檢測到初始讀取和更新之間的任何更改。如果獨占存儲失敗,軟件可以再次嘗試獲取鎖。

前面提到過,需要對標記為獨占的地址進行監控。獨占監視器可以是一個簡單的狀態機,其狀態可以是開放的(open)和獨占的(exclusive)。ARM架構定義了兩種不同的狀態機:本地獨占監視器(Local Exclusive Monitor)和全局獨占監視器(Global Exclusive Monitor)。

根據被訪問地址的可共享性屬性,檢查本地監視器或全局監視器的獨占訪問。

對于Non-shareable地址的獨占訪問檢查僅在本地獨監視器。

對shareable地址的獨占訪問檢查在本地監視器或全局監視器。

每個處理器核都有一個與其關聯的本地監視器。本地監視器可以構造為保存特定地址的獨占狀態,也可以構造為不保存該地址。本地監視器作為處理器的一部分實現。

全局監視器在多個處理器核之間共享。與本地監視器一樣,它們只需要監視一個地址,如果監視器可以標記多個地址,則每個地址都有自己的狀態機。

ARM體系結構要求以下內存類型能夠與全局監視器一起工作:

5a3a7c36-8cb5-11ed-bfe3-dac502259ad0.png

如果程序無法獲得鎖,會不斷嘗試申請鎖。但是這樣會浪費處理器的資源,并且消耗不必要的功耗。有幾種方式可以改善這個問題。對于在釋放鎖之前等待時間相對較長的情況,鎖代碼可以返回給操作系統調度程序,這允許在釋放鎖之前調度其它線程。

對于鎖可能快速被釋放的情況,ARM架構有一種機制,即允許處理器暫停執行,進入低功耗模式,等待鎖被釋放。ARM提供WFE(Wait For Event)指令,如果處理器申請鎖失敗,程序可以執行WFE進入等待。以前的做法是,負責釋放鎖的代碼中會執行SEV(Send Event)指令,通過發送EVENT喚醒正在等待鎖資源的處理器核。現在ARMv8-A架構中,清除全局監視器會自動向所有連接的處理器核發送EVENT喚醒。

審核編輯 :李倩

聲明:本文內容及配圖由入駐作者撰寫或者入駐合作網站授權轉載。文章觀點僅代表作者本人,不代表電子發燒友網立場。文章及其配圖僅供工程師學習之用,如有內容侵權或者其他違規問題,請聯系本站處理。 舉報投訴
  • ARM
    ARM
    +關注

    關注

    134

    文章

    9147

    瀏覽量

    368415
  • 寄存器
    +關注

    關注

    31

    文章

    5361

    瀏覽量

    120876
  • 變量
    +關注

    關注

    0

    文章

    613

    瀏覽量

    28434

原文標題:技術分享 | ARM系列 -- 同步原語

文章出處:【微信號:Ithingedu,微信公眾號:安芯教育科技】歡迎添加關注!文章轉載請注明出處。

收藏 人收藏

    評論

    相關推薦

    詳解CKS32F107xx系列的定時器同步功能

    CKS32F107xx系列部分定時器在內部是相連的,可用于定時器同步或鏈接,方便用戶配置不同的同步模式,以便在電機控制、數據采集和PWM信號生成等應用中,實現復雜的時間序列和多通道的同步
    的頭像 發表于 11-26 17:51 ?458次閱讀
    詳解CKS32F107xx<b class='flag-5'>系列</b>的定時器<b class='flag-5'>同步</b>功能

    ZS7606X系列60V高性能同步整流控制器

    ZS7606X系列是一款內置MOS的同步整流芯片。適用于隔離型的同步整流應用。該系列產品采用原邊開通判定和副邊斷續判定技術。可以有效的避免因激磁振蕩引起的驅動芯片誤動作。采用特有的VC
    發表于 09-24 10:44 ?1次下載

    ZS7605X系列45V高性能同步整流控制器

    ZS7703X系列是一款內置MOS的同步整流芯片。適用于隔離型的同步整流應用。該系列產品采用原邊開通判定和副邊斷續判定技術。可以有效的避免因激磁振蕩引起的驅動芯片誤動作。采用特有的VC
    發表于 09-24 10:41 ?0次下載

    ZS7608X系列60V同步整流控制器使用規格書

    ZS7608X系列是一款內置MOS的同步整流芯片。適用于隔離型的同步整流應用。該系列產品采用原邊開通判定和副邊斷續判定技術。可以有效的避免因激磁振蕩引起的驅動芯片誤動作。采用特有的VC
    發表于 09-07 10:33 ?0次下載

    ZS7607X系列60V同步整流控制器使用規格書

    ZS7607X系列是一款內置MOS的同步整流芯片。適用于隔離型的同步整流應用。該系列產品采用原邊開通判定和副邊斷續判定技術。可以有效的避免因激磁振蕩引起的驅動芯片誤動作。采用特有的VC
    發表于 09-07 10:31 ?0次下載

    ZS7703X系列45V同步整流控制器使用規格書

    ZS7703X系列是一款內置MOS的同步整流芯片。適用于隔離型的同步整流應用。該系列產品采用原邊開通判定和副邊斷續判定技術。可以有效的避免因激磁振蕩引起的驅動芯片誤動作。采用特有的VC
    發表于 09-07 10:29 ?0次下載

    鋇錸工業級 ARM 邊緣計算控制器BL330 系列

    ? 一、 產品概述? ARMxy 系列ARM 嵌入式計算機 BL330 系列是一款可靈活配置 IO 口的工業級 ARM 控制器,基于全志科技 T113-i 雙核
    的頭像 發表于 07-11 10:44 ?548次閱讀
    鋇錸工業級 <b class='flag-5'>ARM</b> 邊緣計算控制器BL330 <b class='flag-5'>系列</b>

    同步整流芯片U711XW系列輕松化解電源方案煩惱

    同步整流芯片U711XW系列輕松化解電源方案煩惱U7116W同步整流芯片U711XW系列(U7116W/7110W),與原U7116/U7110內阻是一樣的,但封裝不再是SOP-8,而
    的頭像 發表于 06-21 08:10 ?794次閱讀
    <b class='flag-5'>同步</b>整流芯片U711XW<b class='flag-5'>系列</b>輕松化解電源方案煩惱

    邁威通信PTP交換機系列:打造精準時間同步的網絡新紀元

    隨著數字化時代的快速發展,各行各業對時間同步的要求日益提高。尤其是在金融、通信、電力等關鍵領域,精準的時間同步不僅關乎系統的穩定運行,更是保障業務連續性和數據安全的關鍵。因此,邁威通信隆重推出的PTP工業以太網交換機系列,旨在為
    的頭像 發表于 05-18 10:53 ?784次閱讀
    邁威通信PTP交換機<b class='flag-5'>系列</b>:打造精準時間<b class='flag-5'>同步</b>的網絡新紀元

    xilinx中的carry4原語在高云FPGA中用什么原語替代?

    xilinx中的carry4原語在高云FPGA中用什么原語替代
    發表于 05-09 16:13

    ArmArm Neoverse計算子系統(CSS):Arm Neoverse CSS V3和Arm Neoverse CSS N3

    和Neoverse CSS N3代表了Arm計算子系統產品組合的最新進展。 Neoverse CSS V3是高性能V系列產品組合的首款產品,相比其前身Neoverse CSS N2,每插槽性能提高了50%。這種增強對于需要高計算吞吐量的應用程
    的頭像 發表于 04-24 17:53 ?1149次閱讀
    <b class='flag-5'>Arm</b>新<b class='flag-5'>Arm</b> Neoverse計算子系統(CSS):<b class='flag-5'>Arm</b> Neoverse CSS V3和<b class='flag-5'>Arm</b> Neoverse CSS N3

    ARM推出一系列汽車SoC IP,RISC-V壓力又大了

    ARM在美國時間3月13日推出一系列汽車SoC IP,包括比英偉達H100還強的CPU內核架構Neoverse V3AE,
    的頭像 發表于 03-20 16:02 ?1131次閱讀
    <b class='flag-5'>ARM</b>推出一<b class='flag-5'>系列</b>汽車SoC IP,RISC-V壓力又大了

    同步多臺示波器的應用指南

    本應用指南以泰克4,5和6系列MSO為例,說明了多示波器同步的程序和原理。4,5和6系列MSO支持任意型號示波器之間的同步,從而實現更多通道的同步
    發表于 03-08 12:41 ?946次閱讀
    <b class='flag-5'>同步</b>多臺示波器的應用指南

    ARM系列STM32F103芯片的解密方法

    本文介紹ARM系列STM32F103芯片的解密方法,其內核是Cortex-M3,內存從16K-512K都有。
    發表于 02-28 11:20 ?1797次閱讀

    Arm 更新 Neoverse 產品路線圖,實現基于 Arm 平臺的人工智能基礎設施

    新聞重點: Arm 宣布推出兩款基于全新第三代 Neoverse IP 構建的新的 Arm Neoverse 計算子系統 Arm Neoverse CSS V3 是高性能 V 系列產品
    發表于 02-22 11:41 ?416次閱讀
    主站蜘蛛池模板: 十分钟免费看完整视频| CHINESE老阿姨免费视频| 国产最新地址| 11 13加污女qq看他下面| 欧洲美女人 一级毛片| 国产免费午夜| 2021自产拍在线观看视频| 日本漫画之无彩翼漫画| 国产亚洲精品福利视频| 再深点灬舒服灬太大了在线视频| 美女内射少妇三区五区| 国产扒开美女双腿屁股流白浆 | 乌克兰黄色录像| 两个客户一起吃我的奶| 成人在线观看播放| 怡春院国产精品视频| 任你躁精品一区二区三区| 含羞草免费完整视频在线观看| 99精品欧美一区二区三区美图| 污污内射久久一区二区欧美日韩| 两个奶头被吃得又翘又痛| 国产精品麻豆a在线播放| 68日本xxxxxxxx79| 天堂Av亚洲欧美日韩国产综合| 久久re这里视频精品15| 成人国产精品日本在线| 一区二区三区毛AAAA片特级| 肉蒲团从国内封禁到日本成经典 | bbwxxxx交女警| 亚洲日韩在线观看| 色午夜日本高清视频www| 狼与美女谐音歌词| 国产亚洲精品久久精品录音| yellow免费观看完整版直播| 伊在香蕉国产在线视频| 午夜A级理论片左线播放| 欧美日韩视频一区二区三区| 久久AV国产麻豆HD真实乱| 国产精品高清免费网站| qvod12| 51xx午夜影视福利|