CPU的运行状态有三种:
- usr 正常工作模式
- sys 系统模式
- 异常模式
CPU在运行过程中,会被各种“异常”打断。“异常”包括:
- und 指令未定义
- SVC 管理模式
- Abt 中止模式
- IRQ 中断模式
- FIQ 快中断模式
CPSR:当前程序状态寄存器(Current Program Status Register)
SPSR:CPSR的备份寄存器
每种异常下都会有特有的一些寄存器(带有三角符号的)
中断处理流程:保存、处理、恢复
arm对异常(中断)处理过程:
① 初始化:
a. 设置中断源,让它可以产生中断
b. 设置中断控制器(可以屏蔽某个中断,优先级)
c. 设置CPU总开关(使能中断)
② 执行其他程序: