在Arm TRM/PGM上看到Arm的中断处理过程,简述如下:设置中断向量表vector_table:b vector_irq_handler....等,然后当某一中断发生时即操作相关寄存器(PC,CPSR,LR),后再跳到中断处理程序。。。。而当Linux跑在Arm上时,其中断模型又是:中断向量表初始化,然后注册中断request_irq()挂接中断服务例程,当发生中断时要,执行do_irq()来找到设备相应的中断服务例程,按照操作系统的中断处理流程来,,,
请问,这两者之间有什么关系么?在arm上是硬件层面,而操作系统下是软件层面?还是Linux以自己的方式完成了相关寄存器操作?Arm下的中断处理程序vector_irq_handler和Linux下的中断处理例程(不同设备可能都对应了IRQ)怎么对应?