【发布时间】:2021-11-01 06:39:43
【问题描述】:
在>中提到,当中断处理程序运行时,相应的IRQ行会被暂时忽略。所以我想知道为什么IRQ线需要被忽略,要保护什么?谢谢。
换句话说,为什么“在相应的中断处理程序终止之前不应该发生中断”。
【问题讨论】:
在>中提到,当中断处理程序运行时,相应的IRQ行会被暂时忽略。所以我想知道为什么IRQ线需要被忽略,要保护什么?谢谢。
换句话说,为什么“在相应的中断处理程序终止之前不应该发生中断”。
【问题讨论】:
如果是电平触发中断,则至少在处理程序清除其源之前必须忽略它,否则中断会重复发生,直到堆栈溢出。并且不管电平触发还是边沿触发,在特定的中断处理程序仍在处理中断时重新进入通常是没有好处的;无论如何,实际的中断程序(上半部分)应该很短。另见Top halves and bottom halves concept clarification。
【讨论】: