关于中断优先级

2019-07-20 21:49发布

抢占优先级好理解,响应优先级同时发生时,优先级高的先执行,问题是,同时是指多少时间内的,绝对同时肯定不可能的?  如果是一个时钟内,感觉也好短,不太可能同时发生吧。
友情提示: 此问题已得到解决,问题已经关闭,关闭后问题禁止继续编辑,回答。
4条回答
xkwy
2019-07-21 00:35
压栈。

一个中断来了,首先要保护现场,设置CPU模式等,这里有雷打不动的12个周期,完后才执行中断服务函数里的第一条指令。

在这12周期内,如果有个优先级比它高的中断来了,那么就让优先级高的响应(算是为别人做的嫁衣。。。)。


不要小看这12个周期,在要求比较高的场合下,一刻都不能等!。

PS,低优先级中断给高优先级中断做嫁衣这种现象称之为“迟来中断( interrupt late-arrival )”

一周热门 更多>