Linux内核异常处理机制

  • 保存现场(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寄存器中;
相关推荐
宁zz8 小时前
乌班图安装jenkins
运维·jenkins
无名之逆9 小时前
Rust 开发提效神器:lombok-macros 宏库
服务器·开发语言·前端·数据库·后端·python·rust
大丈夫立于天地间9 小时前
ISIS协议中的数据库同步
运维·网络·信息与通信
cg50179 小时前
Spring Boot 的配置文件
java·linux·spring boot
暮云星影9 小时前
三、FFmpeg学习笔记
linux·ffmpeg
rainFFrain9 小时前
单例模式与线程安全
linux·运维·服务器·vscode·单例模式
GalaxyPokemon9 小时前
Muduo网络库实现 [九] - EventLoopThread模块
linux·服务器·c++
mingqian_chu10 小时前
ubuntu中使用安卓模拟器
android·linux·ubuntu
xujiangyan_10 小时前
nginx的反向代理和负载均衡
服务器·网络·nginx