- 保存现场(CPU自动完成):
- 1、保存
CPSR寄存器
中的值到SPSR寄存器
中; - 2、修改CPSR寄存器:
- 2.1、修改
T位
,切换处理器的工作状态为ARM状态
; - 2.2、修改
I位和F位
,根据需要屏蔽IRQ和FIQ中断
; - 2.3、修改
M位
,切换处理器到对应的异常模式
下; - 3、保存
返回地址
到LR寄存器
中; - 4、修改
PC寄存器
的值,指向异常向量表
对应的位置; - 恢复现场(程序员手动完成):
- 1、恢复
SPSR寄存器
中的值到CPSR寄存器
中; - 2、恢复
LR寄存器
中的值到PC寄存器
中;
Linux内核异常处理机制
李十五哥2023-11-19 19:13
相关推荐
搬码临时工5 分钟前
小企业如何搭建本地私有云服务器,并设置内部网络地址提供互联网访问old-six-programmer25 分钟前
NAT 类型及 P2P 穿透tan77º40 分钟前
【Linux网络编程】网络基础风口上的吱吱鼠42 分钟前
Armbian 25.5.1 Noble Gnome 开启远程桌面功能18你磊哥1 小时前
Windows 本地安装部署 Apache Druid笑衬人心。1 小时前
Ubuntu 22.04 + MySQL 8 无密码登录问题与 root 密码重置指南IT成长日记2 小时前
【Docker基础】Docker数据卷管理:docker volume inspect及其参数详解ldj20202 小时前
Jenkins 构建过程常见错误ladymorgana2 小时前
【Docker】如何设置 `wiredTigerCacheSizeGB` 和 `resources.limits.memory`再见晴天*_*2 小时前
logback 日志不打印