uC/OS是源碼公開的實時嵌入式操作系統(tǒng)。
uC/OS-Ⅱ的主要特點如下:
公開源代碼,系統(tǒng)透明,很容易就能把操作系統(tǒng)移植到各個不同的硬件平臺上。
可移植性強,uC/OS-Ⅱ絕大部分源碼是用ANSI C寫的,可移植性 (Portable)較強。而與微處理器硬件相關(guān)的那部分是用匯編語言寫的,已經(jīng)壓到最低限度,使得uC/OS-Ⅱ 便于移植到其他微處理器上。
可固化,uC/OS-Ⅱ是為嵌入式應(yīng)用而設(shè)計的,這就意味著,只要開發(fā)者有固化(ROMable) 手段 (C編譯、連接、下載和固化) ,uC/OS-Ⅱ可以嵌入到開發(fā)者的產(chǎn)品中成為產(chǎn)品的一部分。
可裁剪,通過條件編譯可以只使用uC/OS-Ⅱ中應(yīng)用程序需要的那些系統(tǒng)服務(wù)程序,以減少產(chǎn)品中的uC/OS-Ⅱ所需的存儲器空間 (RAM和ROM) 。
占先式,uC/OS-Ⅱ完全是占先式 (Preemptive) 的實時內(nèi)核,這意味著uC/OS-Ⅱ總是運行就緒條件下優(yōu)先級最高的任務(wù)。大多數(shù)商業(yè)內(nèi)核也是占先式的,uC/OS-Ⅱ在性能上和它們類似。
實時多任務(wù),uC/OS-Ⅱ不支持時間片輪轉(zhuǎn)調(diào)度法 (Round-roblin Scheduling) 。 該調(diào)度法適用于調(diào)度優(yōu)先級平等的任務(wù)。
可確定性,全部uC/OS-Ⅱ的函數(shù)調(diào)用與服務(wù)的執(zhí)行時間具有可確定性。
由于uC/OS-II僅是一個實時內(nèi)核,這就意味著它不像其他實時操作系統(tǒng)那樣提供給用戶的只是一些API函數(shù)接口,有很多工作往往需要用戶自己去完成。
把uC/OS-Ⅱ移植到目標硬件平臺上也只是系統(tǒng)設(shè)計工作的開始,后面還需要針對實際的應(yīng)用需求對uC/OS-Ⅱ進行功能擴展,包括底層的硬件驅(qū)動、文件系統(tǒng)、用戶圖形接口 (GUI) 等,從而建立一個實用的RTOS。