|
|||||||||||
| 技術(shù)交流 | 電路欣賞 | 工控天地 | 數(shù)字廣電 | 通信技術(shù) | 電源技術(shù) | 測(cè)控之家 | EMC技術(shù) | ARM技術(shù) | EDA技術(shù) | PCB技術(shù) | 嵌入式系統(tǒng) 驅(qū)動(dòng)編程 | 集成電路 | 器件替換 | 模擬技術(shù) | 新手園地 | 單 片 機(jī) | DSP技術(shù) | MCU技術(shù) | IC 設(shè)計(jì) | IC 產(chǎn)業(yè) | CAN-bus/DeviceNe |
關(guān)于RTOS的一個(gè)問(wèn)題 |
| 作者:ketp 欄目:嵌入式系統(tǒng) |
請(qǐng)教各位大蝦,使用占先式RTOS時(shí),如果高優(yōu)先級(jí)的2個(gè)任務(wù)情況如下: Task0: |...運(yùn)行A時(shí)間片...|...延時(shí)B時(shí)間片...| Task1: |...運(yùn)行B時(shí)間片...|...延時(shí)A時(shí)間片...| 那其他低優(yōu)先級(jí)的任務(wù)是否永遠(yuǎn)得不到CPU? 如果是,該如何避免. |
| 2樓: | >>參與討論 |
| 作者: ketp 于 2005/3/2 10:14:00 發(fā)布:
傷心 傷心,沒(méi)人理 |
|
| 3樓: | >>參與討論 |
| 作者: gdtyy 于 2005/3/2 11:01:00 發(fā)布:
這是任務(wù)劃分問(wèn)題 在搶占式多任務(wù)系統(tǒng)中,只有就緒的最高優(yōu)先級(jí)任務(wù)才能被調(diào)度運(yùn)行。因此,如果高優(yōu)先級(jí)任務(wù)不主動(dòng)讓出時(shí)間片,低優(yōu)先級(jí)任務(wù)永遠(yuǎn)也不可能運(yùn)行。 在安排任務(wù)時(shí),你要自己保證不會(huì)發(fā)生有任務(wù)永遠(yuǎn)也得不到時(shí)間片的情況,而RTOS只負(fù)責(zé)執(zhí)行占先式的調(diào)度規(guī)則,程序邏輯方面一概不管。 一般將緊急的且處理量小的任務(wù)安排高優(yōu)先級(jí),周期發(fā)生且處理量大的任務(wù)安排低優(yōu)先級(jí),特別緊急的事件用中斷ISR+DSR完成。 高優(yōu)先級(jí)的任務(wù)一般發(fā)生頻率比較低,占用時(shí)間片少。應(yīng)安排較多的時(shí)間片給低優(yōu)先級(jí)任務(wù),然后讓高優(yōu)先級(jí)任務(wù)隨時(shí)搶占低優(yōu)先級(jí)任務(wù)的時(shí)間片。 阻塞高優(yōu)先級(jí)任務(wù)的方法是:1、顯式調(diào)用時(shí)間延遲;2、讓其等待資源 如果這樣還不能讓所有任務(wù)都有時(shí)間片運(yùn)行,那么說(shuō)明此時(shí)任務(wù)負(fù)荷超出了CPU執(zhí)行能力,需要使用更高性能的處理器。 任務(wù)劃分合理,CPU性能充裕,就能避免低優(yōu)先級(jí)任務(wù)得不到執(zhí)行的問(wèn)題。 |
|
| 4樓: | >>參與討論 |
| 作者: ketp 于 2005/3/2 12:34:00 發(fā)布:
謝謝 謝謝gdtyy大俠的回答! 使用RTOS部分原因是為了編程方便,任務(wù)優(yōu)先級(jí)安排卻這么講究,要是系統(tǒng)一大,那就麻煩了 |
|
|
|
| 免費(fèi)注冊(cè)為維庫(kù)電子開發(fā)網(wǎng)會(huì)員,參與電子工程師社區(qū)討論,點(diǎn)此進(jìn)入 |
Copyright © 1998-2006 m.58mhw.cn 浙ICP證030469號(hào) |