999精品在线视频,手机成人午夜在线视频,久久不卡国产精品无码,中日无码在线观看,成人av手机在线观看,日韩精品亚洲一区中文字幕,亚洲av无码人妻,四虎国产在线观看 ?

UCOSII系統詳解

2021-04-09 02:30:17無錫職業技術學院樂明于
電子世界 2021年17期
關鍵詞:嵌入式資源功能

無錫職業技術學院 陳 堯 樂明于

UCOSII經常被用于單片機的系統,使用它能夠更好的調用單片機的CPU資源,具有非常多的優點,我們可以使用UCOSII干很多的事情。它是一種實時操作系統(RTOS),與許多商用操作系統具有相同的性能。以及系統使用的基本方法,包括創建任務功能、刪除功能、請求任務刪除功能、更改功能優先級功能、暫停任務功能、任務恢復功能、任務信息查詢。

UCOSII是由它的前版本UCOS漸漸的發展過來的,美國的嵌入式學者在嵌入式期刊中講解和說明了UCOS系統和它的代碼,目前UCOS系統已經發展到了第三個版本,功能越來越強大,而目前市面上最為流行的就是第二個版本UCOSII。

1 UCOSII的優勢

UCOSII設計的初衷是為了讓嵌入式計算機能夠更高效的利用資源,它的底層程序基本上都是由c語言構成的,而cpu的基層程序程序是由匯編語言構成的,整個匯編的部分占用的程序很少很少,因此它的兼容性非常強。使用者只需要很少的要求就可以去使用它。UCOSII系統有許許多多的優勢比如它移植方便、效率很高、占用的內存很少、有很強的擴展性等。UCOSII系統可以在任何的cpu上使用,雖然小巧但是具備很多系統的優點。UCOSII是一個非常強大的嵌入式系統。

2 UCOSII任務的幾個元素

首先就是任務的優先級,優先級顧名思義就是任務執行的先后順序,每一個任務都有一個優先級,而任務設置了優先級之后,就成為了任務標志,這個標志就可以代表任務,我們可以通過優先級來對任務進行各種操作,在多個任務中當優先級高的任務執行完成的會將CPU釋放,而當其他任務執行之中,高優先級的任務執行完成程序就會轉向到高優先級的任務上去。

任務棧:

簡而言之就是一個任務存儲空間,任務執行過程中一些東西就存儲在里邊。他的特點是存儲空間是連續的,并且創建任務的同時就需要一個任務棧。

任務控制模塊OS_TCB:

任務控制模塊OS_TCB是用以記錄任務的各種狀態參數的,UCOSII的每個任務都是由任務控制模塊控制的,任務管理主要的幾個元素是任務的指針,任務的優先級,以及任務的內存指針也就是棧指針。

任務就緒表:

任務就緒表就是目前已經就緒的所有任務的表格,他是一個狀態集,系統的每一個任務在這個狀態集中都是存在的。通過觀察任務的位狀態時1或者0來看任務是否就緒。

任務調度:

任務調度就是在上述的任務表中找到一個優先級最高的任務去執行,讓任務優先級高的任務去占用cpu資源,將優先級最高的任務劃分到任務調度當中然后去執行它。

3 UCOSII任務的狀態過程

UCOSII系統的每一個單獨的任務都相當于是一個閉死的環,既如果單獨執行一個任務就不會牽扯到其他的任務,會永遠的執行下去。UCOSII系統的每個任務都必然處于五個狀態當中。分別時睡眠狀態也就是掛機狀態也就是任務展示沒有任務控制模塊也或者時任務沒有控制模塊狀態,準備狀態也就是就緒狀態隨時可以占用cpu資源來執行任務被系統分配了任務控制模塊,運行狀態就是正在占用cpu執行任務的狀態,還有等待狀態以及中斷服務狀態等。

UCOSII系統的任務在這幾個狀態中按需求轉換。

4 UCOSII的幾個重要函數

4.1 建立任務函數

UCOSII是為了嵌入式系統的一個個任務服務的,所以必然會有一個任務創新的函數,UCOSII并不需要我們去從零開始建立任務,我們只需要使用UCOSII系統自帶的函數就可以實現創建任務的功能,使用非常的方便,它的函數名字是OSTaskCreate。原型為:

OSTaskCreate(void(*task)(void*pd),void*pdata,OS_STK*ptos,INTU prio)。

函數有好幾個參數包括:代表任務的指針、傳遞參數的指針、分配給函數的內存棧頂部的指針、每一個任務的優先級等級(優先級是一個任務在后續使用中的身份象征)。內存棧是每個任務都必須擁有的東西,每個棧都是以連續的內存構成的。

4.2 任務刪除函數

UCOSII的任務刪除函數,就是將整個任務在系統中停止掉,而不是表面意義上的說刪除代碼。他是通過操作任務的優先級來產生作用的。

4.3 請求任務刪除函數

前面提到,必須確保被刪除任務的資源被釋放的前提下才能將其刪除,所以我們通過向被刪除任務發送刪除請求,來實現任務釋放自身占用資源后再刪除。UCOSII提供的請求刪除任務函數原型為:INT8U OSTaskDel(INT8U prio);

在刪除任務的時候如果任務沒有釋放資源那么可能會產生邏輯上的錯誤,因此在使用刪除函數的時候必須要使用請求任務函數。通過此函數來請求被刪除函數,來實現任務刪除之前先釋放自身的資源。UCOSII提供的請求刪除任務函數原型為:INT8U OSTaskDelReq(INT8U prio);

同樣我們還是通過任務的優先級來操作的,優先級作為任務的標識。

任務執行的同時是在占用任務的內存棧的也就是說任務的資源在被任務占用中。如果我們這個時候將任務刪除,那么將會產生錯誤,所以在刪除的時候我們需要去確認一下任務是否將它的資源釋放。因為此UCOSII系統提供了一個專門請求刪除任務?函數:INT8U OSTaskDelReq(INT8U prio);也就是使用任務的表示身份優先級來實現任務請求刪除的操作。

4.4 改變任務的優先級函數

創建任務時,UCOSII會為該任務分配優先級,但優先級不是恒定的。任務的優先級如果無法改變那我們在設定了優先級之后每個任務的優先級機無法改變,這對我們使用UCOSII系統是非常不方便的。因此UCOSII為此提供了一個改變任務優先級的函數如下:INT8U OSTaskChangePrio(INT8U oldprio,INT8U newprio);

4.5 任務掛起函數

任務掛起函數使用起來很方便,它跟任務刪除函數很相似,卻也有很多不同的點,比如任務的掛起只改變任務的就緒狀態并且記錄下,并沒有像任務刪除函數一樣將任務在任務控制標里刪除,所以它不想任務刪除函數一樣需要釋放任務的資源,被任務觀其函數掛起的任務可以通過函數解掛也就是恢復成原來的樣子。INT8U OSTaskSuspend(INT8U prio);

4.6 任務恢復函數

如上所說掛起的任務可以恢復,說的就是任務回復函數了。此功能允許使用者恢復掛起的任務,從而允許計劃程序恢復,UCOSII提供的任務恢復函數原型為:INT8U OSTaskResume(INT8U prio)。

UCOSII系統實現了搶占內核式的多任務執行,擁有一般系統的服務。使用時在每個任務完成后用延遲函數或者程序需要延遲時釋放CPU,系統就會將CPU釋放給優先級最高且就緒的任務,通過這種方式實現多任務的運行。如果高優先級的任務一直沒有釋放CPU的使用權,那么其他低優先級的任務就永遠無法得到CPU的使用權,也就是說及時任務沒有刪除或者掛起也無法運行。也可以看出UCOSII系統的強大,使用UCOSII系統我們可以更高效的管理嵌入式程序的多任務。

猜你喜歡
嵌入式資源功能
也談詩的“功能”
中華詩詞(2022年6期)2022-12-31 06:41:24
基礎教育資源展示
一樣的資源,不一樣的收獲
資源回收
搭建基于Qt的嵌入式開發平臺
關于非首都功能疏解的幾點思考
資源再生 歡迎訂閱
資源再生(2017年3期)2017-06-01 12:20:59
嵌入式軟PLC在電鍍生產流程控制系統中的應用
電鍍與環保(2016年3期)2017-01-20 08:15:32
Altera加入嵌入式視覺聯盟
中西醫結合治療甲狀腺功能亢進癥31例
主站蜘蛛池模板: 网久久综合| 色婷婷成人网| 亚洲三级视频在线观看| 欧美人人干| 91人人妻人人做人人爽男同 | 亚洲第一成年网| 国产成人在线小视频| 午夜毛片福利| 亚洲中文在线看视频一区| 日本草草视频在线观看| 日韩成人免费网站| 成人在线综合| 国产精品分类视频分类一区| 精品一区二区三区自慰喷水| 免费人成在线观看成人片 | 国语少妇高潮| 国产日韩久久久久无码精品| 99国产精品一区二区| 国产精品区视频中文字幕| 欧美精品一二三区| 久久精品波多野结衣| 日韩毛片免费视频| 亚洲免费福利视频| 一级毛片免费播放视频| 91精品国产一区| 亚洲中文在线看视频一区| 欧美曰批视频免费播放免费| 人妻一区二区三区无码精品一区| 国产91精选在线观看| 日本黄色不卡视频| 婷婷开心中文字幕| 欧美精品亚洲精品日韩专区va| 日本不卡在线播放| 国产美女91视频| 欧美一级专区免费大片| 欧美一区中文字幕| 亚洲91精品视频| 欧美一级色视频| 国产日韩欧美精品区性色| 激情乱人伦| 国产成人艳妇AA视频在线| 嫩草在线视频| 日韩精品一区二区三区免费| 国产福利在线免费| 国产一级毛片yw| 黄色三级网站免费| 99久久精品国产麻豆婷婷| 国产亚洲欧美在线专区| 国产成人综合日韩精品无码首页| 2020极品精品国产| 亚洲精品视频网| 亚洲国产成人久久精品软件| 中文字幕不卡免费高清视频| 色天天综合| 亚欧美国产综合| 久久中文电影| 国产黄色爱视频| 在线观看热码亚洲av每日更新| 国产精品尤物在线| 欧美一级视频免费| 人妻免费无码不卡视频| 亚洲女同一区二区| 欧美三级视频在线播放| 亚洲无码高清视频在线观看| 欧美精品1区| 91热爆在线| 精品免费在线视频| 成人国产精品2021| 国产一区在线观看无码| 亚洲美女一级毛片| 国产成人精品一区二区秒拍1o| 国产成人永久免费视频| 国产成人无码AV在线播放动漫| 久久伊伊香蕉综合精品| 国产人前露出系列视频| 亚洲久悠悠色悠在线播放| 老司国产精品视频91| jizz亚洲高清在线观看| 色综合婷婷| 欧美日韩国产高清一区二区三区| 精品人妻系列无码专区久久| 国产精品丝袜视频|