分类:硬中断、软中断
| 硬中断 | 由电脑主句的8259A类似的硬件中断控制芯片发出 的中断, ARM中断控制器发出额中断 |
|---|---|
| 软中断 | 异常 第一类:CPU自行保留的中断系统的调用异常 |
代码结构:
| asm.s | trap.c |
|---|---|
| system_call.s | fork.c signal.c sys.c exit.c |
进行寄存器的拷贝与压栈
设置中断异常向量表
保证正常运行的函数返回值
跳转到对应的中断服务函数上运行
进行模式的复原以及寄存器的复原
跳转回正常工作的函数地址继续运行
如图所示:
| 中断前的处理过程,中断的回复过程 | 中断的执行过程 | |
|---|---|---|
| 硬件中断的处理过程 | asm.s | trap.c |
| 软件异常及系统调用的处理过程 | system_call.s | fork.c signal.c sys.c |
| 中断前的处理过程,中断的回复过程 | 中断的执行过程 | |
|---|---|---|
| 硬件中断的处理过程 | asm.s | trap.c |