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寄存器中;
相关推荐
小阳睡不醒1 小时前
小白成长之路-部署Zabbix7(二)
android·运维
mCell1 小时前
从删库到跑路?这50个Linux命令能保你职业生涯
linux·windows·macos
杰克逊的日记1 小时前
GPU运维常见问题处理
linux·运维·gpu
caolib1 小时前
无需云服务器的内网穿透方案 -- cloudflare tunnel
运维·服务器·内网穿透·tunnel·cloudflared
奇舞精选1 小时前
k8s基本概念初探
运维
誰能久伴不乏2 小时前
Linux系统调用概述与实现:深入浅出的解析
linux·运维·服务器
程序员学习随笔2 小时前
Linux进程深度解析(2):fork/exec写时拷贝性能优化与exit资源回收机制(进程创建和销毁)
linux·运维·服务器
mmoyula2 小时前
【RK3568 PWM 子系统(SG90)驱动开发详解】
android·linux·驱动开发
-SGlow-2 小时前
MySQL相关概念和易错知识点(2)(表结构的操作、数据类型、约束)
linux·运维·服务器·数据库·mysql
代码改变世界ctw3 小时前
Linux内核设计与实现 - 第14章 块I/O层
linux·运维·服务器