|
ucos-ii簡(jiǎn)單介紹
前言篇
前段時(shí)間看了 Linux 版塊“zjw50001”網(wǎng)友上傳的資料《一步一步教你開發(fā)嵌入式 Linux 應(yīng)用程序》感覺對(duì)于學(xué)習(xí) Linux 的新手來說有很大幫助。同時(shí)也很受啟發(fā)。決定在UCOS 版塊發(fā)這樣一個(gè)連續(xù)貼來介紹一下 uCOS-II。主要包括 uCOS-II 的介紹、UCOS-II的移植、uCOS-II的的源碼解析和 UCOS-II 的應(yīng)用案例。uCOS-II 的版本采用常用的 2.52 版本,開發(fā)平臺(tái)用我手頭現(xiàn)有的 STM32F103XXX 自制的開發(fā)板。
在這采用邊寫邊討論的方式。如果在過程中大家有疑問請(qǐng)及時(shí)跟帖提出。會(huì)在每篇后給出解決方法,同時(shí)考慮到工作量比較大,所以希望大家積極參與,讓我們共同把 uCOS-II這個(gè)嵌入式操作系統(tǒng)的知識(shí)傳授個(gè)每一位需要的網(wǎng)友。
0.png (179.08 KB, 下載次數(shù): 126)
下載附件
2018-11-8 16:40 上傳
μC/OS 和 μC/OS-II 是專門為計(jì)算機(jī)的嵌入式應(yīng)用設(shè)計(jì)的, 絕大部分代碼是用 C 語(yǔ)言編寫的。CPU 硬件相關(guān)部分是用匯編語(yǔ)言編寫的、總量約 200行的匯編語(yǔ)言部分被壓縮到最低限度,為的是便于移植到任何一種其它的 CPU 上。用戶只要有標(biāo)準(zhǔn)的 ANSI 的C 交叉編譯器, 有匯編器、 連接器等軟件工具, 就可以將 μC/OS-II 嵌人到開發(fā)的產(chǎn)品中。 μC/OS-II 具有執(zhí)行效率高、 占用空間小、 實(shí)時(shí)性能優(yōu)良和可擴(kuò)展性強(qiáng)等特點(diǎn), 最小內(nèi)核可編譯至 2KB 。μC/OS-II 已經(jīng)移植到了幾乎所有知名的 CPU 上。
嚴(yán)格地說 uC/OS-II 只是一個(gè)實(shí)時(shí)操作系統(tǒng)內(nèi)核,它僅僅包含了任務(wù)調(diào)度,任務(wù)管理,時(shí)間管理, 內(nèi)存管理和任務(wù)間的通信和同步等基本功能。 沒有提供輸入輸出管理, 文件系統(tǒng),網(wǎng)絡(luò)等額外的服務(wù)。但由于 uC/OS-II 良好的可擴(kuò)展性和源碼開放,這些非必須的功能完全可以由用戶自己根據(jù)需要分別實(shí)現(xiàn)。
uC/OS-II 目標(biāo)是實(shí)現(xiàn)一個(gè)基于優(yōu)先級(jí)調(diào)度的搶占式的實(shí)時(shí)內(nèi)核,并在這個(gè)內(nèi)核之上提供最基本的系統(tǒng)服務(wù),如信號(hào)量,郵箱,消息隊(duì)列,內(nèi)存管理,中斷管理等。
uC/OS-II 以源代碼的形式發(fā)布,但并不意味著它是開源軟件。你可以將其用于教學(xué)和私下研究(peaceful research);但是如果你將其用于商業(yè)用途,那么你必須通過 Micrium獲得商用許可。
雖然 uCOS-II 在商業(yè)上使用時(shí)需要的得到授權(quán)并且費(fèi)用也是一筆不小的數(shù)字, 但是他的開源畢竟帶領(lǐng)我們走入了內(nèi)核的世界。在此我代表嵌入式工程師向 Mr Jean J.Labrosse 致謝。
任務(wù)管理
uC/OS‐II 中最多可以支持 64 個(gè)任務(wù),分別對(duì)應(yīng)優(yōu)先級(jí) 0~63,其中 0 為最高優(yōu)先級(jí)。63為最低級(jí),系統(tǒng)保留了 4個(gè)最高優(yōu)先級(jí)的任務(wù)和 4 個(gè)最低優(yōu)先級(jí)的任務(wù),所有用戶可以使用的任務(wù)數(shù)有 56 個(gè)。
uC/OS‐II 提供了任務(wù)管理的各種函數(shù)調(diào)用,包括創(chuàng)建任務(wù),刪除任務(wù),改變?nèi)蝿?wù)的優(yōu)先級(jí),任務(wù)掛起和恢復(fù)等。
系統(tǒng)初始化時(shí)會(huì)自動(dòng)產(chǎn)生兩個(gè)任務(wù):一個(gè)是空閑任務(wù),它的優(yōu)先級(jí)最低,該任務(wù)僅給一個(gè)整形變量做累加運(yùn)算;另一個(gè)是系統(tǒng)任務(wù),它的優(yōu)先級(jí)為次低,該任務(wù)負(fù)責(zé)統(tǒng)計(jì)當(dāng)前 cpu 的利用率。
在系統(tǒng)初始化完畢后啟動(dòng)任務(wù)時(shí)必須創(chuàng)建一份用戶任務(wù),也就是說必須有一個(gè)應(yīng)用程序(用戶任務(wù),使用應(yīng)用程序?qū)τ谖覀兘?jīng)常使用 Windows 用戶容易接受一些。呵呵) ,否則系統(tǒng)會(huì)崩潰。當(dāng)然還有一些其他的要求,咱們后續(xù)再說,下面簡(jiǎn)要概述一下任務(wù)管理相關(guān)的函數(shù)
0.png (60.01 KB, 下載次數(shù): 95)
下載附件
2018-11-8 16:43 上傳
0.png (37.29 KB, 下載次數(shù): 114)
下載附件
2018-11-8 16:43 上傳
0.png (84.45 KB, 下載次數(shù): 108)
下載附件
2018-11-8 16:43 上傳
0.png (116.67 KB, 下載次數(shù): 98)
下載附件
2018-11-8 16:43 上傳
完整的pdf格式文檔51黑下載地址(共82頁(yè)):
uCOS-II簡(jiǎn)單介紹.pdf
(2.21 MB, 下載次數(shù): 395)
2018-11-8 16:33 上傳
點(diǎn)擊文件名下載附件
下載積分: 黑幣 -5
|
評(píng)分
-
查看全部評(píng)分
|