實時操作系統(tǒng)的進程調(diào)度的延時可預(yù)測并盡可能小
發(fā)布時間:2009/1/17 0:00:00 訪問次數(shù):604
既然是多任務(wù)系統(tǒng),那么就必然有任務(wù)之間的切換。當然,負責(zé)這項工作的調(diào)度器在進行進程切換時需要一段執(zhí)行時間,這段執(zhí)行時間的長短也是影響系統(tǒng)實時性的一個重要因素。
因此,作為實時操作系統(tǒng)的調(diào)度器,它在執(zhí)行調(diào)度和任務(wù)切換時所需的運行時間必須是可預(yù)知的,即調(diào)度器所用的時間不能受其他因素(例如任務(wù)數(shù)目)的影響。也就是說,不能因為系統(tǒng)中需要調(diào)度的進程多了,調(diào)度時間就長了一些;需要調(diào)度的進程少了,調(diào)度時間就短了一些。因為,這樣會使應(yīng)用程序的設(shè)計者在設(shè)計時無法計算出系統(tǒng)完成某一個任務(wù)所需的準確時間。
一般來說,調(diào)度的延時以及調(diào)度時間是否可預(yù)測主要取決于調(diào)度算法。調(diào)度算法越復(fù)雜,調(diào)度延時也就越長,所以實時操作系統(tǒng)調(diào)度算法的設(shè)計和選用是需要精心設(shè)計和精心組織的。
實際上,在任何操作系統(tǒng)中都有一個所謂的“不可剝奪窗口”,即在內(nèi)核的某些運行時間段里是不允許進行調(diào)度的。由于進程調(diào)度是靠中斷技術(shù)實現(xiàn)的,因此在內(nèi)核的不適合或不能使用中斷技術(shù)期間都是不能進行調(diào)度的,這就相當于正在運行進程的處理器使用權(quán)是不可剝奪的。例如,在系統(tǒng)正在進行進程調(diào)度期間、系統(tǒng)正在中斷響應(yīng)和處理期間,應(yīng)用程序及操作系 統(tǒng)正在運行臨界段代碼期間、正在進行dma期間,這些時間段就是所謂的“不可剝奪窗口”, 因此在設(shè)計實時操作系統(tǒng)時,應(yīng)想辦法把這些“不可剝奪窗口”減小到在最壞情況下可以忍受的程度。一般來說,采用微內(nèi)核的操作系統(tǒng)由于體積比較小,所以它的“不可剝奪窗口”要比采用宏內(nèi)核的操作系統(tǒng)的“不可剝奪窗口”要小。因此,現(xiàn)在很多實時操作系統(tǒng)都采用微內(nèi)核結(jié)構(gòu)。
其實,內(nèi)核在“不可剝奪窗口”期間,不可能發(fā)生調(diào)度,也就談不到剝奪性的問題,但從它確實延遲了緊急進程的執(zhí)行這個角度來看,這個“不可剝奪窗口”相當于是一個調(diào)度延時。
歡迎轉(zhuǎn)載,信息來自維庫電子市場網(wǎng)(www.dzsc.com)
既然是多任務(wù)系統(tǒng),那么就必然有任務(wù)之間的切換。當然,負責(zé)這項工作的調(diào)度器在進行進程切換時需要一段執(zhí)行時間,這段執(zhí)行時間的長短也是影響系統(tǒng)實時性的一個重要因素。
因此,作為實時操作系統(tǒng)的調(diào)度器,它在執(zhí)行調(diào)度和任務(wù)切換時所需的運行時間必須是可預(yù)知的,即調(diào)度器所用的時間不能受其他因素(例如任務(wù)數(shù)目)的影響。也就是說,不能因為系統(tǒng)中需要調(diào)度的進程多了,調(diào)度時間就長了一些;需要調(diào)度的進程少了,調(diào)度時間就短了一些。因為,這樣會使應(yīng)用程序的設(shè)計者在設(shè)計時無法計算出系統(tǒng)完成某一個任務(wù)所需的準確時間。
一般來說,調(diào)度的延時以及調(diào)度時間是否可預(yù)測主要取決于調(diào)度算法。調(diào)度算法越復(fù)雜,調(diào)度延時也就越長,所以實時操作系統(tǒng)調(diào)度算法的設(shè)計和選用是需要精心設(shè)計和精心組織的。
實際上,在任何操作系統(tǒng)中都有一個所謂的“不可剝奪窗口”,即在內(nèi)核的某些運行時間段里是不允許進行調(diào)度的。由于進程調(diào)度是靠中斷技術(shù)實現(xiàn)的,因此在內(nèi)核的不適合或不能使用中斷技術(shù)期間都是不能進行調(diào)度的,這就相當于正在運行進程的處理器使用權(quán)是不可剝奪的。例如,在系統(tǒng)正在進行進程調(diào)度期間、系統(tǒng)正在中斷響應(yīng)和處理期間,應(yīng)用程序及操作系 統(tǒng)正在運行臨界段代碼期間、正在進行dma期間,這些時間段就是所謂的“不可剝奪窗口”, 因此在設(shè)計實時操作系統(tǒng)時,應(yīng)想辦法把這些“不可剝奪窗口”減小到在最壞情況下可以忍受的程度。一般來說,采用微內(nèi)核的操作系統(tǒng)由于體積比較小,所以它的“不可剝奪窗口”要比采用宏內(nèi)核的操作系統(tǒng)的“不可剝奪窗口”要小。因此,現(xiàn)在很多實時操作系統(tǒng)都采用微內(nèi)核結(jié)構(gòu)。
其實,內(nèi)核在“不可剝奪窗口”期間,不可能發(fā)生調(diào)度,也就談不到剝奪性的問題,但從它確實延遲了緊急進程的執(zhí)行這個角度來看,這個“不可剝奪窗口”相當于是一個調(diào)度延時。
歡迎轉(zhuǎn)載,信息來自維庫電子市場網(wǎng)(www.dzsc.com)
熱門點擊
- ARM通用寄存器
- PIE中斷向量的映射方式
- PIE模塊級中斷
- ARM復(fù)位原理
- FIQ異常的描述
- ARM硬件電路設(shè)計
- ARM程序狀態(tài)寄存器
- ARM時序
- 什么是嵌入式實時操作系統(tǒng)
- 計算機操作系統(tǒng)調(diào)度策略(箅法)
推薦技術(shù)資料
- DFRobot—玩的就是
- 如果說新車間的特點是“靈動”,F(xiàn)QPF12N60C那么... [詳細]
- MPS 啟動器開發(fā)板/評估套件(EVKT/P
- 12V、6A 四路降壓電源管理 IC
- 數(shù)字恒定導(dǎo)通時間控制模式(COT)
- 同步降壓PWM DC-DC線性
- ADC 技術(shù)參數(shù)與應(yīng)用需求之
- 反激變換器傳導(dǎo)和輻射電磁干擾分
- 多媒體協(xié)處理器SM501在嵌入式系統(tǒng)中的應(yīng)用
- 基于IEEE802.11b的EPA溫度變送器
- QUICCEngine新引擎推動IP網(wǎng)絡(luò)革新
- SoC面世八年后的產(chǎn)業(yè)機遇
- MPC8xx系列處理器的嵌入式系統(tǒng)電源設(shè)計
- dsPIC及其在交流變頻調(diào)速中的應(yīng)用研究