分析 ARM 处理器不同工作模式的作用,举例说明切换过程。

分析 ARM 处理器不同工作模式的作用,举例说明切换过程。

ARM 处理器(以 ARM7TDMI 为例)的 7 中工作模式为:
(1) 用户模式(usr):运行应用程序的普通模式。
(2) 系统模式(sys):运行具有特权的操作系统任务。
(3) 超级用户模式(svc):操作系统的保护模式,主要用于 SWI 和 OS。这
个模式有额外的特权,允许进一步控制处理器。
(4) 中断模式(irq):用作通用中断处理。这个模式也是有特权的。导致 IRQ
的设备有键盘、定时器、串行口、硬盘、软盘、等等……
(5) 快速中断模式(fiq):用来处理外设发起的快速中断。用于支持高速数据
传送与通道处理。这个模式是有特权的。
(6) 数据访问中止模式(abt):当数据或指令预取终止时进入该模式,可用于
虚拟存储及存储保护。
(7) 未定义模式(und):当执行了未定义指令时进入该模式。
举例:当系统响应中断或异常、或访问受保护的系统资源时,处理器会进入
特权模式(除用户模式以外的所有模式)。 例如从 usr 模式切换到 irq 模式:
首先 CPU 会将返回地址保存到相应模式的 lr 寄存器中,即将 usr 模式下的 pc 值,
保存到 irq 模式下的 lr 寄存器中。
然后保存 CPSR 到相应模式的 SPSR 寄存器中, 即 CPU 保存 usr 模式下的 CPSR
到 irq 模式下的 SPSR 中。
最后将 pc 设置成 irq 模式下的某地址值继续执行。

  • 1
    点赞
  • 6
    收藏
    觉得还不错? 一键收藏
  • 0
    评论
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值