ARM工作模式分为用户模式和非用户模式(即特权模式),一共有七种工作模式,如下:
1、用户模式(usr):用于正常执行程序
2、系统模式(sys):运行均有特权的操作系统任务
3、快速中断模式(fig):支持高速数据传输或通道处理
4、外部中断模式(irq):用于通用的中断处理
5、管理模式(svc):操作系统使用的保护模式(高权限),复位和软件中断进入
6、数据访问终止模式(abt):当数据或指令预取终止时进入,可用于虚拟内存及存储保护
7、未定义指令终止模式(und):当未定义的指令执行时进入, 用于支持硬件协处理器的软件仿真(浮点、微量运算)
其中除了第一个用户模式(usr)其他的均为非用户模式(即特权模式)。
非用户模式(特权模式)也可以分为:系统模式和异常模式。系统模式就是第二个,第三个到第七个就是异常模式。