標題: 學習筆記-關于uCOS-ll中就緒狀態表的理解 [打印本頁]
作者: aiohu 時間: 2020-5-2 17:47
標題: 學習筆記-關于uCOS-ll中就緒狀態表的理解
學習筆記----關于uCOS-ll中就緒狀態表的理解
μC/OS_II進行任務調度的思想是 “近似地每時每刻總是讓優先級最高的就緒任務處于運行狀態” 。為了保證這一點,它在系統或用戶任務調用系統函數及執行中斷服務程序結束時總是調用調度器,來確定應該運行的任務并運行它。μC/OS_II進行任務調度的依據就是任務就緒表
為了能夠使系統清楚地知道,系統中哪些任務已經就緒,哪些還沒有就緒,μC/OS_II在RAM中設立了一個記錄表,系統中的每個任務都在這個表中占據一個位置,并用這個位置的狀態(1或者0)來表示任務是否處于就緒狀態,這個表就叫做任務就緒狀態表,簡稱叫任務就緒表
任務就緒表是由N個8位維數組組成(最多64個).一部分為OSRdyTbl[ ],另一部分為OSRdyGrp(無符號8位變量)。
在創建任務后,任務的優先級就確定了,比如13。把64個任務優先級分成8個隊,第一隊是1---8,第二隊是9---17,。。。。如果要查一下13優先級的任務在那個位置,首先看一下大體在那個隊,大于8應該在在第二隊,那就不看第一隊了,看第二隊好了,對二隊從9開始到17了,大概在第5位置。計算機也是這樣工作的,先分組,再定位。
讓我們以優先級為13為例子,分析一下先分組再定位的內部機理吧。既然是計算機用的,就寫成二進制
0000 1101 把D5、D4、D3、分為一組 001
D2、D1、D0分為一組 101
可見是一組5位。再以一個復雜的優先級63分析一下:
0011 1111 把D5、D4、D3、分為一組 111
D2、D1、D0分為一組 111
可見是第7組第7位。這樣看起來很清爽的。
把D5、D4、D3確定的十進制數作為OSRdyGrp的8個位標志,如上面的001和111,分別是OSRdyGrp的第1位和第7位置1,代表第一隊和第7隊有需要查找的優先級。這樣共可以分為8個隊。
把D2、D1、D0確定的十進制數作為OSRdyTbl[]的8個位標志,如上面的101和111,分別是OSRdyTbl[1]隊和OSRdyTbl[7]隊的第1位和第7位置1,代表第一隊的第一個位和第7隊的第7個位有需要查找的優先級。
對計算機而言,一個任務創建后,就根據二進制把它分解為上述的兩個部分。并根據這兩個部分分別對相應OSRdyGrp和OSRdyTbl[]的位置1,這樣就完成了任務的就緒。
作者: SHZLNB 時間: 2020-6-8 02:47
清楚了很多
歡迎光臨 (http://www.zg4o1577.cn/bbs/) |
Powered by Discuz! X3.1 |
主站蜘蛛池模板:
综合国产|
在线免费黄色小视频
|
黄色男女网站
|
日韩一级在线
|
黄色av免费网站
|
成人福利视频网站
|
天堂视频免费
|
久久久美女
|
欧美成人久久
|
日韩欧美在线观看
|
久久精品国产v日韩v亚洲
|
亚洲高清视频一区二区
|
亚洲啊v在线
|
日本精品视频
|
天天综合永久入口
|
久久久精
|
在线免费黄色小视频
|
黄页网址在线观看
|
欧美精品福利视频
|
成人免费看电影
|
欧美久久一区
|
亚洲视频一区在线观看
|
毛片av免费在线观看
|
欧美激情在线精品一区二区三区
|
国产午夜精品久久久久
|
欧美一级片黄色
|
羞羞视频在线观看免费观看
|
亚洲一区 中文字幕
|
毛片久久久|
成年人视频免费在线观看
|
欧美亚洲视频
|
国产96色在线
|
午夜久久久久久久久久一区二区
|
国产人成精品一区二区三
|
99欧美精品
|
精品国产91乱码一区二区三区
|
国产欧美精品区一区二区三区
|
真人一级毛片
|
一区二区三区四区不卡
|
国产精品成人一区二区三区夜夜夜
|
久久69精品久久久久久久电影好
|