作者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