女人荫蒂被添全过程13种图片,亚洲+欧美+在线,欧洲精品无码一区二区三区 ,在厨房拨开内裤进入毛片

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

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

3天內不再提示

μC/OS-II三種臨界區管理方式

GReq_mcu168 ? 來源:typedef ? 作者:typedef ? 2022-07-11 10:01 ? 次閱讀
加入交流群
微信小助手二維碼

掃碼添加小助手

加入工程師交流群

01

臨界段與臨界資源

操作系統中有有兩個名詞,臨界段和臨界資源。

01

臨界段

代碼的臨界段也稱為臨界區,指處理時不可分割的代碼。一旦這部分代碼開始執行,則不允許任何中斷打入。為確保臨界段代碼的執行,在進入臨界段之前要關中斷,而臨界段代碼執行完以后要立即開中斷。

02

臨界資源

臨界資源在一段時間內只允許一個進程訪問的資源。又稱獨占資源。資源可以是輸入輸出設備,例如打印機、鍵盤、顯示器,資源也可以是一個變量,一個結構或一個數組等。

02

三種臨界區管理機制

2.1

示例代碼

在μC/OS-II中有三種臨界區管理方式,是在oc_cpu.h文件中通過宏OS_CRITICAL_METHOD來控制,如下圖為8086臨界區實現方式

ce86d1f6-00bb-11ed-ba43-dac502259ad0.png

2.2

PSW(程序狀態字)

不管是何種芯片,進入臨界區的思想是不變的,就是失能控制PSW(Program Status Word)中的IF(中斷標志位)標志位。8086的標志寄存器如下圖所示。不同芯片的PSW略微不同。

ce9b1d14-00bb-11ed-ba43-dac502259ad0.png

2.3

方法1

方法1是直接將OS_ENTER_CRITICAL()和OS_EXIT_CRITICAL()定義為處理器的關閉(CLI)和打開(STI)中斷指令。STI(Set Interrupt) 為開中斷,CLI(Clear Interrupt) 為關中斷,這里設置的是PSW(Program Status Word)中的中斷標志位。

但這種方法有一個隱患,如果在關閉中斷后調用μC/OS函數,當函數返回后,中斷將被打開!嚴格意義上的關閉中斷應該是執行OS_ENTER_CRITICAL()后中斷始終是關閉的, 方法1顯然不滿足要求。但方法1的優點是簡單,執行速度快(只有一條指令)。

2.4

方法二

OS_ENTER_CRITICAL()會在關中斷前保存之前的標志寄存器內容到堆棧中,隨之將中斷關閉,OS_EXIT_CRITICAL()從堆棧中恢復之前保存的狀態。

PUSHF是將標志寄存器入棧,POPF是將棧頂的內容彈出到標志寄存器中。

但是一些編譯器不能很好地優化內聯代碼,因此,此方法可能無法正常工作。因為編譯器可能不夠智能,無法知道堆棧指針已經被更改(通過PUSHF指令),此時再想去訪問堆棧中的數據極大可能出現錯誤的值,從而導致應用程序的崩潰。

2.5

方法三

一些編譯器提供了擴展的接口允許用戶獲取PSW中的值,并將此狀態值保存在聲明的變量中,隨之將中斷關閉,在退出臨界區時,在將上面保存的值恢復到PSW中。

OSCPUSaveSR以及OSCPURestoreSR是在os_cpu_a.s文件中定義的,使用匯編指令實現的。

這種方法的優點就是安全可靠,缺點就是執行速度較上面兩種慢,因為進入和退出臨界區的匯編代碼可能不止一條,而且還需要訪問內存變量cpu_sr。

原文標題:μC/OS三種臨界區管理機制

文章出處:【微信公眾號:硬件攻城獅】歡迎添加關注!文章轉載請注明出處。

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

    關注

    21

    文章

    5070

    瀏覽量

    141608
  • 操作系統
    +關注

    關注

    37

    文章

    7123

    瀏覽量

    125305
  • 代碼
    +關注

    關注

    30

    文章

    4894

    瀏覽量

    70464

原文標題:μC/OS三種臨界區管理機制

文章出處:【微信號:mcu168,微信公眾號:硬件攻城獅】歡迎添加關注!文章轉載請注明出處。

收藏 人收藏
加入交流群
微信小助手二維碼

掃碼添加小助手

加入工程師交流群

    評論

    相關推薦
    熱點推薦

    1553B總線常見三種組網方式

    1553B總線作為航空電子系統中的關鍵通信協議,其組網方式直接影響系統的可靠性和實時性。本文將深入解析1553B總線的三種典型組網結構:單總線結構、雙冗余總線和多總線分層架構,并結合實際應用場景分析
    的頭像 發表于 06-21 17:39 ?181次閱讀
    1553B總線常見<b class='flag-5'>三種</b>組網<b class='flag-5'>方式</b>

    信號隔離器三種供電方式的區別

    信號隔離器是一重要的信號隔離裝置,其供電方式主要有獨立供電、回路供電和輸出回路供電三種。以下是這三種供電方式的詳細區別: 一、獨立供電 1
    的頭像 發表于 04-17 16:23 ?341次閱讀
    信號隔離器<b class='flag-5'>三種</b>供電<b class='flag-5'>方式</b>的區別

    redis三種集群方案詳解

    在Redis中提供的集群方案總共有三種(一般一個redis節點不超過10G內存)。
    的頭像 發表于 03-31 10:46 ?648次閱讀
    redis<b class='flag-5'>三種</b>集群方案詳解

    三種太赫茲波的產生方式

    本文簡單介紹了三種太赫茲波的產生方式。 太赫茲波(THz)是一電磁波,在電磁波譜上位于紅外與微波之間。太赫茲光子能量在1-10 meV范圍之間,在光譜分析、醫療成像、移動通信方面都有非常廣闊
    的頭像 發表于 02-17 09:09 ?1641次閱讀
    <b class='flag-5'>三種</b>太赫茲波的產生<b class='flag-5'>方式</b>

    示波器的三種觸發模式

    示波器的觸發方式不僅影響波形捕捉的時機,還決定了顯示的波形是否穩定。 常見的觸發模式有三種: 單次觸發 (Single)、 正常觸發 (Normal)和 自動觸發 (Auto)。下面將對這三種觸發
    的頭像 發表于 01-07 11:04 ?7002次閱讀
    示波器的<b class='flag-5'>三種</b>觸發模式

    systemd journal收集日志的三種方式

    隨著 systemd 成了主流的 init 系統,systemd 的功能也在不斷的增加,比如對系統日志的管理。Systemd 設計的日志系統好處多多,這里筆者就不再贅述了,本文筆者主要介紹 systemd journal 收集日志的三種
    的頭像 發表于 10-23 11:50 ?773次閱讀
    systemd journal收集日志的<b class='flag-5'>三種</b><b class='flag-5'>方式</b>

    I2S有左對齊,右對齊跟標準的I2S三種格式,那么這三種格式各有什么優點呢?

    大家好,關于I2S格式,有兩個疑問請教一下 我們知道I2S有左對齊,右對齊跟標準的I2S三種格式,那么這三種格式各有什么優點呢? 而且對于標準的I2S格式,32FS傳輸16bit的數據,48fs傳輸24bit的數據,最低位會移動到右聲道,是否意味著該數據被丟棄了?還是有
    發表于 10-21 08:23

    優化MSP430上用于uC/OS-II的內存

    電子發燒友網站提供《優化MSP430上用于uC/OS-II的內存.pdf》資料免費下載
    發表于 10-18 10:16 ?0次下載
    優化MSP430上用于uC/<b class='flag-5'>OS-II</b>的內存

    Windows管理內存的三種主要方式

    Windows操作系統提供了多種方式管理內存,以確保系統資源的有效利用和性能的優化。以下是關于Windows管理內存的三種主要方式的詳細闡
    的頭像 發表于 10-12 17:09 ?2311次閱讀

    mosfet的三種工作狀態及工作條件是什么

    )的不同,可以工作在三種主要狀態:截止狀態、線性和飽和。 1. 截止狀態 工作狀態描述 : 當VGS小于MOSFET的開啟電壓(VGS(TH))時,MOSF
    的頭像 發表于 10-06 16:51 ?5833次閱讀

    shell腳本執行的三種方式及區別

    在Linux系統中,Shell腳本是一非常實用的工具,用于自動化執行一系列命令。Shell腳本可以大大提高工作效率,簡化復雜的任務。在這篇文章中,我們將介紹Shell腳本執行的三種方式及其區別
    的頭像 發表于 08-30 15:24 ?2143次閱讀

    簡述三種esp32的開發方式是什么

    ESP32是一款由樂鑫(Espressif)推出的低功耗、高性能的Wi-Fi和藍牙雙模無線通信芯片,廣泛應用于物聯網、智能家居、智能硬件等領域。本文將詳細介紹三種ESP32的開發方式:Arduino
    的頭像 發表于 08-20 09:11 ?7703次閱讀

    常用的pwm跟蹤控制方式是哪三種

    PWM(脈寬調制)跟蹤控制是一廣泛應用于電機控制、電源管理、通信等領域的技術。它通過調整脈沖的寬度來控制輸出信號的占空比,從而實現對系統的精確控制。常用的PWM跟蹤控制方式主要有三種
    的頭像 發表于 08-14 10:34 ?2519次閱讀

    計算機網絡中的三種通信方式

    計算機網絡中的三種通信方式,即單工通信、半雙工通信和全雙工通信,是理解和設計高效網絡架構的基礎。每種通信方式都有其獨特的特性、應用場景及優缺點。以下是對這三種通信
    的頭像 發表于 08-07 15:00 ?5013次閱讀

    逆變電路的三種調壓方式

    路的三種調壓方式:脈寬調制(PWM)調壓、相位控制調壓和頻率調制調壓。 1. 脈寬調制(PWM)調壓 脈寬調制是一通過改變脈沖寬度來調整輸出電壓的調壓方式。在PWM調壓中,逆變電路的
    的頭像 發表于 08-02 16:59 ?4240次閱讀
    主站蜘蛛池模板: 大港区| 临汾市| 竹北市| 临朐县| 长汀县| 徐水县| 牟定县| 泌阳县| 漳浦县| 汨罗市| 千阳县| 阜宁县| 仪陇县| 兴仁县| 奈曼旗| 宣城市| 安仁县| 罗定市| 祥云县| 华亭县| 武乡县| 昌图县| 桐乡市| 仙居县| 蕉岭县| 云梦县| 修水县| 灌云县| 三河市| 石家庄市| 图木舒克市| 柳河县| 汉沽区| 盐津县| 安岳县| 邛崃市| 长顺县| 邻水| 双柏县| 镇平县| 友谊县|