linux学习记录

一、异常
1.异常类型

2.IRQ中断流程

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

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

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

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

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

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

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

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

相关推荐
日拱一卒的小田6 小时前
ZYNQ学习笔记4-ZYNQ的SD卡控制器1
笔记·学习
拼图2098 小时前
Git常用语法
分布式·git·学习
Vcaker9 小时前
Linux学习29-kubernetes网络
学习
dadaobusi12 小时前
学习:奈奎斯特
学习
传奇开心果编程14 小时前
【Go入门练中学】第2课:条件与循环
后端·学习·golang
小小de风呀14 小时前
de风——【从零开始学C++】(二十)红黑树封装map和set
c++·学习
爱吃苹果的日记本15 小时前
数据结构第四课—线性表Linear List
数据结构·学习
昌原的儿子LEO15 小时前
ARM 汇编核心知识点总结
嵌入式硬件·学习
Ray Wang15 小时前
Context上下文工程
python·学习·ai编程
百里香酚兰15 小时前
【Unity学习笔记】如何把粉色Prefab还原
笔记·学习·unity