【发布时间】:2015-04-13 16:57:22
【问题描述】:
假设有两个任务在运行 TASK_A 和 TASK_B。当 TASK_A 运行时发生中断,需要切换到 TASK_B 的上下文。
在 ISR 中时,不应该直接跳转 TASK_B,因为它仍在 ISR 中并且尚未返回(例如:RETI 未执行)。如果从 ISR 正常返回,它将照常返回到 TASK_A 的最后一个程序计数器。因此,RTOS 必须退出 ISR,并且一旦退出 ISR,它就必须执行上下文切换到 TASK_B。 RTOS 如何在退出 ISR 后立即收回控制权,而不是返回到 TASK_A。
如果从 RTOS 功能切换,例如在解锁互斥锁时,可以通过备份寄存器进行直接切换。
RTOS 如何处理这种情况
如果这是一个笼统的问题,请原谅我......
【问题讨论】: