作者neutopia (journey)
看板ASM
標題[問題] 關於RTOS preemptive kernel實際排程的疑問
時間Wed Feb 10 08:59:04 2010
現在在看 uC/OS已經移植在某chip上的source code
發現和書上講的原理有一點差異
書上是說只要ISR做完時就會重新排程,由priority最高的task去執行
我看的Code只有在system tick timer的ISR裡有作schedule
其他都沒有
我的疑問為:哪些中斷做完要排程是由programmer自己決定嗎?
一堆週邊(Ethernet, UART, SPI, Timer)的中斷做完後要不要重新排程
應該是看使用上的需要吧...
而這也會影響到critical section是把所有中斷都disable或者只把有重新排程
的中斷disable...
不知我的想法是否正確?
--
※ 發信站: 批踢踢實業坊(ptt.cc)
◆ From: 61.247.173.226
※ 編輯: neutopia 來自: 61.247.173.226 (02/10 09:02)
1F:→ ruemann:一個是執行緒一個是硬體中斷,不太一樣吧 02/10 14:56
2F:→ manchester77:應該是獨立的吧,如果連周邊裝置都要重新schedule 02/11 10:48
3F:→ manchester77:那整個CPU時間都只在做Context switch。 02/11 10:49