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

0
  • 聊天消息
  • 系統(tǒng)消息
  • 評論與回復(fù)
登錄后你可以
  • 下載海量資料
  • 學(xué)習(xí)在線課程
  • 觀看技術(shù)視頻
  • 寫文章/發(fā)帖/加入社區(qū)
會員中心
創(chuàng)作中心

完善資料讓更多小伙伴認(rèn)識你,還能領(lǐng)取20積分哦,立即完善>

3天內(nèi)不再提示

μC/OS-II三種臨界區(qū)管理方式

GReq_mcu168 ? 來源:typedef ? 作者:typedef ? 2022-07-11 10:01 ? 次閱讀

01

臨界段與臨界資源

操作系統(tǒng)中有有兩個名詞,臨界段和臨界資源。

01

臨界段

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

02

臨界資源

臨界資源在一段時間內(nèi)只允許一個進(jìn)程訪問的資源。又稱獨(dú)占資源。資源可以是輸入輸出設(shè)備,例如打印機(jī)、鍵盤、顯示器,資源也可以是一個變量,一個結(jié)構(gòu)或一個數(shù)組等。

02

三種臨界區(qū)管理機(jī)制

2.1

示例代碼

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

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

2.2

PSW(程序狀態(tài)字)

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

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

2.3

方法1

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

但這種方法有一個隱患,如果在關(guān)閉中斷后調(diào)用μC/OS函數(shù),當(dāng)函數(shù)返回后,中斷將被打開!嚴(yán)格意義上的關(guān)閉中斷應(yīng)該是執(zhí)行OS_ENTER_CRITICAL()后中斷始終是關(guān)閉的, 方法1顯然不滿足要求。但方法1的優(yōu)點(diǎn)是簡單,執(zhí)行速度快(只有一條指令)。

2.4

方法二

OS_ENTER_CRITICAL()會在關(guān)中斷前保存之前的標(biāo)志寄存器內(nèi)容到堆棧中,隨之將中斷關(guān)閉,OS_EXIT_CRITICAL()從堆棧中恢復(fù)之前保存的狀態(tài)。

PUSHF是將標(biāo)志寄存器入棧,POPF是將棧頂?shù)膬?nèi)容彈出到標(biāo)志寄存器中。

但是一些編譯器不能很好地優(yōu)化內(nèi)聯(lián)代碼,因此,此方法可能無法正常工作。因?yàn)榫幾g器可能不夠智能,無法知道堆棧指針已經(jīng)被更改(通過PUSHF指令),此時再想去訪問堆棧中的數(shù)據(jù)極大可能出現(xiàn)錯誤的值,從而導(dǎo)致應(yīng)用程序的崩潰。

2.5

方法三

一些編譯器提供了擴(kuò)展的接口允許用戶獲取PSW中的值,并將此狀態(tài)值保存在聲明的變量中,隨之將中斷關(guān)閉,在退出臨界區(qū)時,在將上面保存的值恢復(fù)到PSW中。

OSCPUSaveSR以及OSCPURestoreSR是在os_cpu_a.s文件中定義的,使用匯編指令實(shí)現(xiàn)的。

這種方法的優(yōu)點(diǎn)就是安全可靠,缺點(diǎn)就是執(zhí)行速度較上面兩種慢,因?yàn)檫M(jìn)入和退出臨界區(qū)的匯編代碼可能不止一條,而且還需要訪問內(nèi)存變量cpu_sr。

原文標(biāo)題:μC/OS三種臨界區(qū)管理機(jī)制

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

審核編輯:彭靜
聲明:本文內(nèi)容及配圖由入駐作者撰寫或者入駐合作網(wǎng)站授權(quán)轉(zhuǎn)載。文章觀點(diǎn)僅代表作者本人,不代表電子發(fā)燒友網(wǎng)立場。文章及其配圖僅供工程師學(xué)習(xí)之用,如有內(nèi)容侵權(quán)或者其他違規(guī)問題,請聯(lián)系本站處理。 舉報投訴
  • 顯示器
    +關(guān)注

    關(guān)注

    21

    文章

    4990

    瀏覽量

    140138
  • 操作系統(tǒng)
    +關(guān)注

    關(guān)注

    37

    文章

    6856

    瀏覽量

    123438
  • 代碼
    +關(guān)注

    關(guān)注

    30

    文章

    4803

    瀏覽量

    68752

原文標(biāo)題:μC/OS三種臨界區(qū)管理機(jī)制

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

收藏 人收藏

    評論

    相關(guān)推薦

    systemd journal收集日志的三種方式

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

    優(yōu)化MSP430上用于uC/OS-II的內(nèi)存

    電子發(fā)燒友網(wǎng)站提供《優(yōu)化MSP430上用于uC/OS-II的內(nèi)存.pdf》資料免費(fèi)下載
    發(fā)表于 10-18 10:16 ?0次下載
    優(yōu)化MSP430上用于uC/<b class='flag-5'>OS-II</b>的內(nèi)存

    Windows管理內(nèi)存的三種主要方式

    Windows操作系統(tǒng)提供了多種方式管理內(nèi)存,以確保系統(tǒng)資源的有效利用和性能的優(yōu)化。以下是關(guān)于Windows管理內(nèi)存的三種主要方式的詳細(xì)闡
    的頭像 發(fā)表于 10-12 17:09 ?1007次閱讀

    mosfet的三種工作狀態(tài)及工作條件是什么

    )的不同,可以工作在三種主要狀態(tài):截止?fàn)顟B(tài)、線性區(qū)和飽和區(qū)。 1. 截止?fàn)顟B(tài) 工作狀態(tài)描述 : 當(dāng)VGS小于MOSFET的開啟電壓(VGS(TH))時,MOSF
    的頭像 發(fā)表于 10-06 16:51 ?2360次閱讀

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

    PWM(脈寬調(diào)制)跟蹤控制是一廣泛應(yīng)用于電機(jī)控制、電源管理、通信等領(lǐng)域的技術(shù)。它通過調(diào)整脈沖的寬度來控制輸出信號的占空比,從而實(shí)現(xiàn)對系統(tǒng)的精確控制。常用的PWM跟蹤控制方式主要有三種
    的頭像 發(fā)表于 08-14 10:34 ?1431次閱讀

    計算機(jī)網(wǎng)絡(luò)中的三種通信方式

    計算機(jī)網(wǎng)絡(luò)中的三種通信方式,即單工通信、半雙工通信和全雙工通信,是理解和設(shè)計高效網(wǎng)絡(luò)架構(gòu)的基礎(chǔ)。每種通信方式都有其獨(dú)特的特性、應(yīng)用場景及優(yōu)缺點(diǎn)。以下是對這三種通信
    的頭像 發(fā)表于 08-07 15:00 ?2960次閱讀

    簡述斬波電路的三種控制方式

    斬波電路是一常見的電力電子器件,廣泛應(yīng)用于直流電壓調(diào)節(jié)、電壓變換、電流變換等領(lǐng)域。它可以實(shí)現(xiàn)對電流和電壓的控制,以滿足不同的電氣設(shè)備的需求。斬波電路的控制方式主要有三種:脈寬調(diào)制控制、頻率調(diào)制控制
    的頭像 發(fā)表于 03-11 15:22 ?4414次閱讀

    熱傳遞的三種方式是什么

    熱傳遞有三種基本形式:導(dǎo)熱(Thermal Conduction)、對流(Thermal Convection)和輻射(Thermal Radiation)。每種形式都有其獨(dú)特的物理過程和應(yīng)用領(lǐng)域
    的頭像 發(fā)表于 02-06 14:02 ?2368次閱讀
    熱傳遞的<b class='flag-5'>三種</b><b class='flag-5'>方式</b>是什么

    光耦隔離 電容隔離 磁隔離這三種隔離方式各有什么優(yōu)缺點(diǎn)?

    光耦隔離、電容隔離和磁隔離是三種常見的隔離方式,它們各有優(yōu)缺點(diǎn),適用于不同的應(yīng)用場景。
    的頭像 發(fā)表于 01-30 15:38 ?6177次閱讀

    介紹三種建模方式

    據(jù)量大,而是指樣本的完備性。還有就是大數(shù)據(jù)或者AI被專業(yè)學(xué)者或者行業(yè)工程師所詬病的就是,純粹的數(shù)據(jù)驅(qū)動搞不出所以然出來,需要領(lǐng)域知識(即Domain Knowledge)的協(xié)助。此外,還有第三種建模方式就是混合驅(qū)動,即基礎(chǔ)物理模型加上數(shù)據(jù)驅(qū)動的
    的頭像 發(fā)表于 01-23 10:48 ?1998次閱讀

    運(yùn)動控制的三種控制方式

    非標(biāo)項(xiàng)目中有非常多的運(yùn)動控制,根據(jù)系統(tǒng)配置、電機(jī)類型以及精度需求的不同主要有三種控制方式:開環(huán)控制、半閉環(huán)控制、全閉環(huán)控制。
    的頭像 發(fā)表于 01-23 09:48 ?1554次閱讀
    運(yùn)動控制的<b class='flag-5'>三種</b>控制<b class='flag-5'>方式</b>

    嵌入式Linux開發(fā)的三種方式

    嵌入式Linux開發(fā)主要有三種方式:裸機(jī)開發(fā)、SDK開發(fā)和驅(qū)動開發(fā)。
    的頭像 發(fā)表于 01-22 14:22 ?997次閱讀

    通過TestStand三種主要運(yùn)行方式探究TestStand開放式架構(gòu)

    在這張圖中,我們可以看到三種主要運(yùn)行方式分別是”Test UUTs”、”Single Pass”、”Run MainSequence”。大家不妨先嘗試一下看看同一個序列文件用三種運(yùn)行方式
    的頭像 發(fā)表于 01-19 17:34 ?4938次閱讀
    通過TestStand<b class='flag-5'>三種</b>主要運(yùn)行<b class='flag-5'>方式</b>探究TestStand開放式架構(gòu)

    自動控制的基本方式三種是什么

    自動控制是指利用特定的設(shè)備和技術(shù)手段,通過對被控制系統(tǒng)的輸入信號進(jìn)行監(jiān)測和調(diào)整,以實(shí)現(xiàn)期望的輸出狀態(tài)或目標(biāo)。自動控制的基本方式三種:開環(huán)控制、閉環(huán)控制和神經(jīng)網(wǎng)絡(luò)控制。 第一基本方式
    的頭像 發(fā)表于 01-17 09:38 ?3664次閱讀

    3極管的三種工作狀態(tài)條件

    極管的三種工作狀態(tài)條件,分別是截止區(qū)、放大區(qū)和飽和區(qū)。 首先,我們來介紹極管的截止區(qū)。當(dāng)極管
    的頭像 發(fā)表于 01-15 17:37 ?2993次閱讀
    主站蜘蛛池模板: 牛牛超碰 国产| 久久99热这里只频精品6| 亚洲区视频| 四房播播开心色播| 青娱乐极品视觉盛宴av| 男人J桶女人P视频无遮挡网站| 好硬好湿好大再深一点动态图| 国产精品99久久久久久AV下载| 成人永久免费视频| 成在线人免费| 成年人在线视频免费观看| jealousvue成熟40岁| 97资源站超碰在线视频| 2020无码最新国产在线观看| 综合伊人久久| 97国内精品久久久久久久影视| 最新中文字幕在线视频| 777EY_卡通动漫_1页| 51vv视频社区| 99热这里只有精品9| 99视频这里只有精品| wankz tv videos国产| qvod 艺术片| 成年人视频免费在线播放| 俄罗斯破处| 国产精品美女久久久久AV超清| 国产欧美一本道无码| 国产自产第一区c国产| 九九热视频在线观看| 久久视频在线视频观品15| 麻豆XXXX乱女少妇精品-百度| 免费色片播放器| 日韩精品免费一区二区| 谁有成人网站地址| 亚洲粉嫩美白在线| 伊人久久天堂| 99国内精品久久久久久久清纯| younv 学生国产在线视频| 国产成人精品视频频| 国产亚洲tv在线观看| 久久精品国产清白在天天线|