ARM工作模式分為用戶模式和非用戶模式(即特權(quán)模式),一共有七種工作模式,如下:
1、用戶模式(usr):用于正常執(zhí)行程序
2、系統(tǒng)模式(sys):運(yùn)行均有特權(quán)的操作系統(tǒng)任務(wù)
3、快速中斷模式(fig):支持高速數(shù)據(jù)傳輸或通道處理
4、外部中斷模式(irq):用于通用的中斷處理
5、管理模式(svc):操作系統(tǒng)使用的保護(hù)模式(高權(quán)限),復(fù)位和軟件中斷進(jìn)入
6、數(shù)據(jù)訪問終止模式(abt):當(dāng)數(shù)據(jù)或指令預(yù)取終止時(shí)進(jìn)入,可用于虛擬內(nèi)存及存儲(chǔ)保護(hù)
7、未定義指令終止模式(und):當(dāng)未定義的指令執(zhí)行時(shí)進(jìn)入, 用于支持硬件協(xié)處理器的軟件仿真(浮點(diǎn)、微量運(yùn)算)
其中除了第一個(gè)用戶模式(usr)其他的均為非用戶模式(即特權(quán)模式)。
非用戶模式(特權(quán)模式)也可以分為:系統(tǒng)模式和異常模式。系統(tǒng)模式就是第二個(gè),第三個(gè)到第七個(gè)就是異常模式。