如果中断A的抢占优先级>B的抢占优先级
那么当同时有AB的中断请求的时候,会先响应A;当B的中断服务程序正在执行而A产生了中断请求,则会在B的中断服务程序 中嵌套A的中断服务程序
如果A的抢占优先级>B的抢占优先级=C的抢占优先级>D的抢占优先级
,D的响应优先级>C的响应优先级>B的响应优先级>A的响应优先级
那么比如现在正在执行A的中断服务程序;B和C和D都产生了中断服务请求,但是都不能打断A;
至于A执行完之后先执行谁的中断服务程序,首先是要考虑BCD的抢占优先级,抢占优先级B=C>D,因此再考虑响应优先级C>B,因此A执行完之后执行C;
虽然此处D的响应优先级最大,而且此处是考虑响应而非抢占,但是还是要优先考虑抢占优先级
因此将响应优先级称为子优先级更加合适,而且事实上程序里的变量也是这么命名的
匿名回答于2021-02-25 09:33:16