2017-09-10

拿ARM来举例:

中断控制器去中断ARM核心,可以选择fiq和irq两种方式:

irq发生时,ARM处于irq模式。在irq模式期间,不可以再次被irq中断打断,也就是不能嵌套;但是可以被fiq打断;

fiq发生时,ARM处于fiq模式,在fiq模式期间,不可以再次被fiq中断打断,更不可能被irq模式打断;

在ARM11及以前版本中,一个中断控制器中只有一个中断能被设为fiq ;

综上所述,两个区别:

fiq的优先更高一些(跟irq相比);

fiq 的r8 r9 r10 r11 r12寄存器物理上是独立,进入fiq保护现场时,少保护这几个寄存器(我拷,这能节约多少时间?)

另外,linux直接没有用到ARM的fiq.

你可能感兴趣的:(2017-09-10)