李述銅從0寫(xiě)自己的嵌入式操作系統(tǒng)
uC/OS-II的兩種任務(wù):系統(tǒng)任務(wù)、用戶(hù)任務(wù)。
μC/OS_II進(jìn)行任務(wù)調(diào)度的思想是“近似地每時(shí)每 刻總是讓優(yōu)先級(jí)最高的就緒任務(wù)處于運(yùn)行狀 態(tài)” 。為了保證這一點(diǎn),它在系統(tǒng)或用戶(hù)任務(wù) 調(diào)用系統(tǒng)函數(shù)及執(zhí)行中斷服務(wù)程序結(jié)束時(shí)總是 調(diào)用調(diào)度器,來(lái)確定應(yīng)該運(yùn)行的任務(wù)并運(yùn)行它 。
任務(wù)的5種狀態(tài):
Sleep(睡眠狀態(tài)):任務(wù)沒(méi)有被配備任務(wù)控制塊或被剝奪了任務(wù)控制塊的狀態(tài)
Ready(就緒狀態(tài)):系統(tǒng)為任務(wù)配備了任務(wù)控制塊且在任務(wù)就緒表中進(jìn)行了就緒登記。
Running(運(yùn)行狀態(tài)):處于就緒狀態(tài)的任務(wù)如果經(jīng)調(diào)度器判斷獲得了CPU的使用權(quán)。
Wait(等待狀態(tài)):正在運(yùn)行的任務(wù),需要等待一段事件或需要等待一個(gè)事件發(fā)生在運(yùn)行的使用權(quán)。。。
標(biāo)簽: