對ucos任務級任務切換和中斷級任務切換的理解

任務切換和平臺有關,因此ucos用彙編語言實現了兩種切換方式,我的理解是這樣的,也不知道是否正確:

1. 任務級任務切換,由用戶發起,在任務裏面調用,自己直接觸發或者根據某種條件判斷來觸發,在切換函數裏面需要自己去保存當前任務的上下文到任務堆棧裏面

2. 中斷級任務切換,在推出中斷的時候觸發,通過OSIntExit()函數調用,後面的理解比較關鍵了,也可能是錯誤的,當前任務的上下文保存由系統中斷自己完成,不需要用戶去做,用戶需要做的就是找到當前就緒的最高優先級的任務,然後從它的堆棧裏面恢復上下文接着執行,相當任務切換的前半部分工作由中斷去完成,後半部分由用戶去完成

發表評論
所有評論
還沒有人評論,想成為第一個評論的人麼? 請在上方評論欄輸入並且點擊發布.
相關文章