下載下傳位址:http://www.micrium.com/
它的特點:
1)開源,
2)可移植性,絕大部分代碼用C寫,硬體相關部分用彙編寫,
3可固化,
4)可剪裁,這通過條件編譯實作,使用#define語句定義所需要的功能。
5)可剝奪性(總是運作就緒條件下優先級最高的任務),
6)多任務(可以管理64個任務,其中保留8個給uC/OS-II,是以使用者最多可有56個任務,每個任務優先級不同,也就意味着不支援時間片輪轉排程法,因為這種方法适合于優先級平等的任務)。
7)可确定性。函數排程和服務執行時間具有确定性,除了OSTimeTick()和某些事件标志服務,系統服務執行時間不依賴使用者應用程式任務數目的多少。
8)任務棧。允許每個任務自己單獨的棧空間不同,可以使用棧空間檢驗函數确定所需要的棧空間大小。
9)系統服務。提供信号量,互斥型信号量,事件标志,消息郵箱,消息隊列,塊大小固定的記憶體申請與釋放,時間管理函數等服務。
10)中斷管理。中斷嵌套層數最多可達到255層。
11)穩定性和可靠性。
OSInit()函數用來初始化核心,必須首先調用。建立兩個任務:空閑任務(其他任務都未就緒時運作),統計任務(計算CPU的使用率).
*****************************************************************
* Description: This function is used to initialize the internals of uC/OS-II and MUST be called prior to creating any uC/OS-II object and, prior to calling OSStart().
OSInit
********************************************************************************************
* Description: This function is called by OSInit() to initialize miscellaneous variables.
OS_InitMisc
空閑任務和統計任務建立的代碼基本一樣,隻是統計任務的優先級比空閑任務大1,
* Description: This function creates the Idle Task.
CodeOS_InitTaskIdle
其他初始化代碼放到後面具體的每一個子子產品中再分析。
本文轉自Phinecos(洞庭散人)部落格園部落格,原文連結:http://www.cnblogs.com/phinecos/archive/2007/11/22/968817.html,如需轉載請自行聯系原作者