Contex-A处理器运行模型
以前的ARM处理器有七种运行模式,现在有九种,新增加Monitor和Hyp运行模式。
模式 | 描述 |
---|---|
USR(User) | 用户模式,非特权模式,大部分程序运行的时候处于此模式 |
FIQ | 快速中断模式,进入FIQ中断异常 |
IRQ | 一般中断模式 |
SVC(Supervisor) | 超级管理员模式,特权模式,宫操作系统使用 |
MON(Monitor) | 监视模式,这个模式用于安全扩展模式,指用户安全 |
ABT(Abort) | 数据访问终止模式,用于虚拟存储以及存储保护 |
HYP(Hyp) | 超级监视模式,用于虚拟化扩展 |
UND(Undef) | 未定义指令终止模式 |
SYS(System) | 系统模式,用于运行特权级的操作系统任务 |
记忆(UFIS MAHUS)
Contex-A寄存器组
ARM提供了16个32位通用寄存器(R0R15)供软件使用,前15个(R0R14)可以用作通用的数据存储,R15是程序计数器PC,用来保存将要执行的命令,ARM还提供了一个当前程序状态寄存器CPSR和一个备份程序寄存器SPSR,SPSR是CPSR的备份。
总结一下, Cortex-A内核寄存器组成如下(共43个):
①、 34个通用寄存器,包括 R15程序计数器 (PC),这些寄存器都是 32位的。
②、 8个状态寄存器,包括 CPSR和 SPSR。
③、 Hyp模式下独有一个 ELR_Hyp寄存器。