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

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

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

3天內不再提示

uC/OS-II—郵箱介紹

冬至子 ? 來源:硬件工程師技術干貨 ? 作者:硬件工程師技術干 ? 2023-09-11 15:35 ? 次閱讀

在uC/OS-II中郵箱是線程(任務)通訊的一種,使用郵箱能夠發送一個指針,當然也可以發送指針大小的數據。

大致原理是,如果郵箱中沒有郵件(數據),此時線程嘗試獲取,會導致線程進入掛起狀態。當郵箱中有郵件時,恢復最高優先級線程。

經常使用的幾個函數,如下:

1、OSMboxCreate()

創建一個郵箱,并進行初始化

2、OSMboxPend()

嘗試從郵箱獲取郵件,如果郵箱中有郵件則立即獲得,退出此函數。如果郵箱為空,調用線程進入掛起狀態,等待郵件到來。

在uC/OS-II中多個線程等待郵件時,不是采用鏈表的方式,采用鏈表就有優先級排序問題,排序時間和鏈表長度有關,時間不可控,實時性差一些。uC/OS-II采用了一種巧妙的方式,以后專門寫個文章敘述一下。

此函數不能在ISR中調用。

3、OSMboxPost()

嘗試發送郵件:

1)如果有線程正在等待郵件,則把郵件發送給優先級最高的線程。在uC/OS-II中無論等待的線程有多少個,從這些線程中挑選出最高優先級的時間是一樣的,這一點非常重要,也是實時操作系統的特點,時間可控。

2)如果沒有線程等待郵件,看一下郵箱是否已滿,滿則返回錯誤碼,空則把郵件放入郵箱。

4、OSMboxAccept

嘗試獲取郵件,如果郵箱里有郵件,直接取出來,如果沒有返回(void *)0郵件,不會掛起線程。

5、OSMboxPendAbort

取消掛起的線程,被恢復的線程獲得(void *)0郵件,這個函數有兩個選項,一個是只恢復最高優先級線程,另外一個是恢復所有正在等待的線程。

6、OSMboxPostOpt

這個函數比OSMboxPost()多了幾個選項:

NONE:和OSMboxPost()完全一樣。

BROADCAST:等待的線程全部獲得相同郵件。

NO_SCHED:恢復最高優先級的線程,但是不進行線程調度

7、OSMboxDel

刪除郵箱,刪除時有兩個選項:

NO_PEND:只有沒有線程掛起等待時才能刪除郵箱

ALWAYS:直接刪除,如果有線程等待,恢復等待線程,線程獲得(void *)0郵件。

8、OSMboxQuery

查詢郵箱,結果放在OS_MBOX_DATA結構體中。

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

    關注

    0

    文章

    17

    瀏覽量

    1782
  • ucos-ii
    +關注

    關注

    1

    文章

    11

    瀏覽量

    3609
收藏 人收藏

    評論

    相關推薦

    uc os-ii官方網站

    uc os-ii的官方網站是:uc os-ii官方網站http://www.micrium.com/
    發表于 06-26 13:36

    uC/OS-II簡介

    信號量,郵箱,消息隊列,內存管理,中斷管理等。任務管理uC/OS-II 中最多可以支持64 個任務,分別對應優先級0~63,其中0 為最高優先級。63為最低級,系統保留了4個最高優先級的任務和4個最低
    發表于 10-08 09:11

    uC/OS-II簡介

    信號量,郵箱,消息隊列,內存管理,中斷管理等。任務管理uC/OS-II 中最多可以支持64 個任務,分別對應優先級0~63,其中0 為最高優先級。63為最低級,系統保留了4個最高優先級的任務和4個最低
    發表于 10-11 09:26

    uC/OS-II簡介

    信號量,郵箱,消息隊列,內存管理,中斷管理等。任務管理uC/OS-II 中最多可以支持64 個任務,分別對應優先級0~63,其中0 為最高優先級。63為最低級,系統保留了4個最高優先級的任務和4個最低
    發表于 10-15 11:03

    uC/OS-II簡介

    信號量,郵箱,消息隊列,內存管理,中斷管理等。任務管理uC/OS-II 中最多可以支持64 個任務,分別對應優先級0~63,其中0 為最高優先級。63為最低級,系統保留了4個最高優先級的任務和4個最低
    發表于 10-20 09:35

    uC/OS-II簡介

    信號量,郵箱,消息隊列,內存管理,中斷管理等。任務管理uC/OS-II 中最多可以支持64 個任務,分別對應優先級0~63,其中0 為最高優先級。63為最低級,系統保留了4個最高優先級的任務和4個最低
    發表于 10-25 09:59

    uC/OS-II簡介

    信號量,郵箱,消息隊列,內存管理,中斷管理等。任務管理uC/OS-II 中最多可以支持64 個任務,分別對應優先級0~63,其中0 為最高優先級。63為最低級,系統保留了4個最高優先級的任務和4個最低
    發表于 10-27 09:29

    如何去解決uC/OS-II中優先級翻轉問題?

    uC/OS-II的運行機制是什么?uC/OS-II中的優先級翻轉問題有哪些?如何去解決uC/OS-II
    發表于 04-25 07:07

    uC/OS-II源碼包的下載

    ,如下圖所示。uC/OS-II內核結構2、對各部分的進一步解釋:第一部分 (1):與硬件無關的高層的操作系統部分大部分是關于任務的創建、信號量的創建、郵箱和隊列的創建,以...
    發表于 08-05 08:09

    uC/OS-II移植過程記錄

    怎么去移植uC/OS-II系統呢?移植uC/OS-II系統的過程是怎樣的?
    發表于 11-01 07:38

    為什么想學uc/OS-II

    請大家先想一下,為什么想學uc/OS-II?在通過例程學習單片機的時候有沒有這樣的疑問,為什么例程是一個個孤立的呢,能否整合在一起?RTOS就是這樣一個多線程運行的好工具,我選取UCOS來實現
    發表于 02-18 07:16

    The uC/OS-II port for Keil C V

    The uC/OS-II port for Keil C V6.20, V6.21 or higher
    發表于 03-25 14:18 ?57次下載

    基于uc/os-ii 的嵌入式GUI研究與應用

    目前,uc/os-ii 在嵌入式系統中得到了廣泛的應用,但適用于uc/os-ii 的圖形界面卻很少。本文介紹了一種適用于
    發表于 08-24 08:17 ?21次下載

    uC/OS-II 應用程序基本結構及重要的API介紹

    應用uC/OS-II,自然要為它開發應用程序,下面論述基于uC/OS-II的應用程序的基本結構以及注意事項。 每一個uC/
    發表于 10-24 11:28 ?2次下載

    【嵌入式系統—實時操作系統】uC/OS-II 及其STM32F103移植

    ,如下圖所示。uC/OS-II內核結構2、對各部分的進一步解釋:第一部分 (1):與硬件無關的高層的操作系統部分大部分是關于任務的創建、信號量的創建、郵箱和隊列的創建,以...
    發表于 12-23 19:58 ?5次下載
    【嵌入式系統—實時操作系統】<b class='flag-5'>uC</b>/<b class='flag-5'>OS-II</b> 及其STM32F103移植
    主站蜘蛛池模板: 久久视频精品38在线播放 | 精品人妻无码一区二区三区蜜桃臀 | 学校捏奶揉下面污文h | 午夜伦伦电影理论片费看 | 免费女性裸身照无遮挡网站 | 日韩一区二区三区免费体验 | ca88亚洲城娱乐 | 一级无毛片 | 网红主播 国产精品 开放90后 | 人妻洗澡被强公日日澡 | 欧美亚洲国内日韩自拍视频 | 嫩交18xxxx | 国产精品99久久久久久AV色戒 | 国产精品久久久久久久人热 | 第四色男人天堂 | 狠狠爱亚洲五月婷婷av | 国产精品久久毛片A片软件爽爽 | 久久嫩草影院网站 | 国产日韩久久久精品影院首页 | 美女伸开两腿让我爽 | 依恋影院在线观看 | 乱码中字在线观看一二区 | 67194免费入口 | 国产一区二区三区国产精品 | 草699一码二码三码四码 | 国产成人刺激视频在线观看 | 亚婷婷洲AV久久蜜臀无码 | 永久精品免费影院在线观看网站 | 国产成人高清精品免费观看 | 99久久久无码国产AAA精品 | 99久久无码一区人妻A片竹菊 | 午夜dj影院视频观看 | 国产福利高清在线视频 | 免费视频精品38 | 亚洲日韩中文字幕区 | 欧美性黑吊xxx | 精品无码无人网站免费视频 | 无码免费视频AAAAAA片草莓 | 国产人妻人伦精品久久久 | 娇妻归来在线观看免费完整版电影 | 男总裁憋尿PLAY灌尿BL |