7种工作模式

本文详细介绍了ARM处理器的七种工作模式,包括用户模式、系统模式、普通中断模式、快速中断模式、管理模式、数据访问中止模式和未定义指令中止模式,以及它们各自的特点和应用场景。特别强调了FIQ与IRQ中断的区别,FIQ处理时会禁止中断。此外,还提到了硬件权限级别和中断向量表的重要作用,以及在异常或中断发生时如何切换并设置堆栈指针。

摘要生成于 C知道 ,由 DeepSeek-R1 满血版支持, 前往体验 >

1.工作模式介绍

        (1) 用户模式(Usr

                用户程序的工作模式,运行在操作系统的用户态。没有权限操作其他硬件资源,只能执行自己的数据,也不能切换到其他模式下。要想访问硬件资源或切换到其它模式只能通过软中断或产生异常。

        (2) 系统模式(Sys

                运行操作系统的特权任务。与用户模式共用一套寄存器,都没有SPSR(Saved Program Statement Register,已保存程序状态寄存器),但Sys比Usr有更高的权限,可以访问所有系统资源。

        (3) 普通中断模式(IRQ

                用于通用中断处理,通常在硬件产生中断信号后自动进入。

        (4) 快速中断模式(FIQ

                相对IRQ而言,用来处理对时间要求比较紧急的中断请求。主要用于高速数据传输、通道处理。

        (5) 管理模式(Svc

                CPU上电后的默认模式。主要做系统的初始化、软中断处理。当Usr的用户程序请求使用硬件资源时,通过软中断进入Svc。系统复位或开机、软中断时进入此模式(由系统调用执行软中断WSI命令触发)

        (6) 数据访问中止模式(ABT

                用于支持虚拟内存和/或存储器保护。当用户程序访问非法地址,没有权限读取的内存地址时,进入ABT。

        (7) 未定义指令中止模式(Und

                支持硬件协处理器的软件仿真,CPU在指令的译码阶段不能识别该指令操作时,进入此模式。

2.FIQ与IRQ的区别

        FIQ处理时禁止中断

3.硬件权限级别

        Sys>异常模式>Usr

4.中断向量表

        当异常或中断发生时,CPU将PC设置到中断向量表(异常向量表),根据异常信号的类型,跳转到相应向量项地址(内容是指令)

        

 5.切换并设置堆栈指针

        

 

 

 

评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值