天天看點

uCOS_II的任務管理

        最近,看看了uCOS_II這個作業系統,首先說明一下裸機跑和嵌入系統的差別吧,嵌入系統會更有安全性,可靠性,對多任務操作更具有實用性。舉個簡單的例子,               RTOS(Real Time Operating System )實時作業系統,就是要有及時性。在初學單片機時,大家都在用delay();讓cpu大部分時間都在delay(),無法進行實時處理。之後,學了狀态機的思想處理,而ucos-II是這樣處理的:系統自己搞個時鐘,程式需要延時的時候調用專門的延時函數,而cpu就不管這個任務了而執行别的任務,是以有更重要的任務來的話就馬上處理了,這隻是一個方面。

   有點跑偏,說uCOS_II的任務管理,任務包含系統任務和使用者任務,對于任務的管理,每個任務都有自己的記憶體空間,在初始化時,設定OS_LOWEST_PRIO來設定任務個數,來開辟任務記憶體空間。最多64個任務,這樣設定可以減少記憶體。一個任務包含任務控制塊,任務代碼,任務堆棧。

任務排程是通過任務就緒表查找最進階的就緒任務的:

uCOS_II的任務管理

繼續閱讀