Operating system RTOS与通用OS的ISR之间的差异

Operating system RTOS与通用OS的ISR之间的差异,operating-system,rtos,isr,Operating System,Rtos,Isr,我正在学习ISR,但我找不到RTOS的中断服务例程与通用OS之间的区别。任何人都可以解释一下它们之间的区别吗?在RTOS中,退出中断上下文通常会导致调度程序运行(ISR将有一个中断尾声来执行此操作),以确定最高优先级的就绪任务(如果ISR以任何方式发信号通知任务,则可能会发生变化)。另一方面,在GPO(通用操作系统)中,任务切换通常在时间片的基础上执行,因此调度器仅在操作系统时钟中断时运行 换句话说,在GPOS中,ISR完成后,它通常会返回到中断的任务,而在RTOS中,它会评估任务时间表,并在就

我正在学习ISR,但我找不到RTOS的中断服务例程与通用OS之间的区别。任何人都可以解释一下它们之间的区别吗?在RTOS中,退出中断上下文通常会导致调度程序运行(ISR将有一个中断尾声来执行此操作),以确定最高优先级的就绪任务(如果ISR以任何方式发信号通知任务,则可能会发生变化)。另一方面,在GPO(通用操作系统)中,任务切换通常在时间片的基础上执行,因此调度器仅在操作系统时钟中断时运行


换句话说,在GPOS中,ISR完成后,它通常会返回到中断的任务,而在RTOS中,它会评估任务时间表,并在就绪状态下将上下文切换到最高优先级的任务。

你说的“正常操作系统”是什么意思?@kkrambo,正常操作系统我指的是任何像Windows这样的操作系统,Linux等@DineshMaurya:“通用”或“桌面”操作系统可能比“普通”更好。@Clifford,谢谢你的建议。将“普通”改为“通用”以使其更清楚。嗯。。您是否有“调度程序仅在操作系统时钟中断时运行”的GPO示例?Windows和Linux当然不属于这一类。@Clifford,如果我当时正确理解了其中的要点,那么即使在通用操作系统中,从ISR返回时也应该调用调度程序。@DineshMaurya“ISR”(即驱动程序),代码有选择权。它可以执行正常中断返回,或请求调度运行。也许它只填充了一个大网络缓冲区的一小部分&所以它只是返回。稍后,在另一个中断中,当有更多的数据进入时,它可以发出信号量/事件/任意,并且(调用/跳转/设置/任意),请求操作系统在中断状态退出时执行调度运行,以便使等待数据准备就绪/立即运行的线程。。没有必要或渴望等待任何计时器——如果它等待,性能将非常糟糕。@DineshMaurya:答案是一般性的;不同的操作系统可能会有所不同。关键是在RTOS中,有必要运行调度器以进行基于实时优先级的抢占式调度。GPO的调度策略约束较少。