分段中断架构RTOS可以使用中断处理程序和调度程序之间的工作进行巧妙的分区来实现“零中断延迟”。这种方法至少有几个专有的闭源实例,例如AVIX和Quasarsoft- Q-Kernel。
有关open source RTOS links的相关SO问题,但所有建议的操作系统都使用统一的中断架构。
有没有开源分段中断架构RTOS?
答案 0 :(得分:1)
我认为这有时也称为“延迟中断”服务或处理,因此使用该术语查找候选人可能是值得的。
或许可以通过为ISR服务保留最高优先级的任务级别来“伪造”它,所以假设您有32个中断向量,您将保留ISR2级别的优先级0到31(假设零为高)。然后,每个实际中断简单地设置发信号通知ISR2任务的事件标志。在这种情况下,你不负责在ISR2任务中调用阻塞函数,坚果非阻塞内核服务可以自由使用。
我不确定这是否会给你带来完全相同的效果(我必须比我更充分地研究它 - 或者现在关心它),但这确实意味着你可以在真正的ISR中做最少的工作,真正的ISR将始终抢占任何ISR2。