linux学习记录

一、异常
1.异常类型

2.IRQ中断流程

1.cpu每个指令周期检查是否发送异常;

2.若发现异常,保存CPSR(程序状态寄存器),将当前处理模式设置为ARM、IRQ模式,将被打断应用程序地址的下一个指令保存到LR寄存器,例如当前程序地址为0x6000008,LR为0x6000004,即下一个指令的地址;

3.PC指针指向0x18,程序到0x18取出指令,这个指令跳转到中断异常处理函数;

4.中断异常处理函数中,分三步处理

①保护现场:寄存器、CPU状态入栈;

②根据中断号,跳转到对应的中断处理函数中执行;

③执行完毕恢复现场:寄存器、CPU状态出栈

5.恢复现场后,PC指向原来中断的地方,重新回到断点执行程序

相关推荐
小智RE0-走在路上15 分钟前
Python学习笔记(7)--集合,字典,数据容器总结
笔记·python·学习
呵呵哒( ̄▽ ̄)"1 小时前
专项智能练习(古代神话)
学习
map_vis_3d1 小时前
JSAPIThree 加载单体三维模型学习笔记:SimpleModel 简易加载方式
笔记·学习·3d
专注于大数据技术栈1 小时前
java学习--String和StringBuffer互转
java·学习
龘龍龙2 小时前
Python基础学习(四)
开发语言·python·学习
charlie1145141912 小时前
深入解构:MSVC 调试机制与 Visual Studio 调试器原理
c++·ide·windows·学习·visual studio·调试·现代c++
Darken033 小时前
基于C语言的学习---if语句
c语言·学习·if语句
LiYingL3 小时前
LAMIC:一种无需学习、布局可控的多参考图像生成方法
学习
小严家3 小时前
Java基础教程大全完整学习路径
java·开发语言·学习
yesyesyoucan3 小时前
在线魔方解谜站:从零入门到精通的智能魔方学习平台
学习·算法