25-ARM-V7架构

运行模式

  • User(USR):用户模式
    linux系统用户进程,资源访问受限
  • System(SYS):系统模式
    linux内核,共用寄存器,资源自由访问
  • IRQ:一般中断模式
    硬件产生中断信号
  • FIQ:快速中断模式
    时间紧急的中断,高速信号的传输、采集
  • Superivisor(SVC):管理模式
    默认模式,系统初始化,软中断
  • Abort(ABT):数据访问终止模式
    非法访问地址或寄存器,段错误
  • Undef(UND):未定义指令模式
    程序跑飞,篡改
  • Monitor:用于用户安全扩展模式
  • Hyp:用于虚拟化扩展

寄存器组

通用寄存器

  • r0~r3:用来传递函数参数、暂存数据
  • r4~r11:用来保存被调用函数的局部变量、暂存数据
  • r12:记录函数调用过程中上一次sp指针(堆栈指针)的值
  • r13(sp):函数堆栈寄存器
  • r14(lr寄存器):记录函数返回地址
  • r15(pc指针):程序计数器

程序状态寄存器

  • cpsr:该寄存器包含运算标志位、中断禁止位、当前运行模式标志等一些状态位以及一些控制位
  • spsr:发生异常切换模式时,将cpsr复制到异常的模式下的spsr

系统寄存器

cp15协处理器:内存、缓存、中断

相关推荐
花小璇学linux23 分钟前
imx6ull-驱动开发篇22——Linux 时间管理和内核定时器
linux·运维·驱动开发
你好,赵志伟2 小时前
Socket 编程 TCP
linux·服务器·tcp/ip
Liang_GaRy3 小时前
心路历程-三个了解敲开linux的大门
linux·运维·服务器
一只栖枝7 小时前
华为 HCIE 大数据认证中 Linux 命令行的运用及价值
大数据·linux·运维·华为·华为认证·hcie·it
wuicer9 小时前
ubuntu 20.04 安装anaconda以及安装spyder
linux·运维·ubuntu
cui__OaO11 小时前
Linux软件编程--线程
linux·开发语言·线程·互斥锁·死锁·信号量·嵌入式学习
小狗爱吃黄桃罐头11 小时前
正点原子【第四期】Linux之驱动开发篇学习笔记-1.1 Linux驱动开发与裸机开发的区别
linux·驱动开发·学习
小晶晶京京11 小时前
day34-LNMP详解
linux·运维·服务器
画个太阳作晴天11 小时前
A12预装app
linux·服务器·前端
fengyehongWorld12 小时前
Linux crontab定时任务
linux·运维