织梦CMS - 轻松建站从此开始!

罗索

ARM异常的种类与处理过程

落鹤生 发布于 2012-06-29 10:46 点击:次 
ARM包括以下几种异常类型:1.复位(如加电,系统复位等)2.未定义指令 3.软中断 4.指令预取中止 5.数据访问中止 7.外部中断请求 8.快速中断请求
TAG:

ARM包括以下几种异常类型:1.复位(如加电,系统复位等)2.未定义指令 3.软中断 4.指令预取中止 5.数据访问中止 7.外部中断请求 8.快速中断请求

中断处理过程:
1.保存处理器当前状态,中断屏蔽以及各条件标志位。即将CPSR寄存器中的值保存到SPSR寄存器中。
2.设置CPSR寄存器中的CPU运行模式位,使之切换到相应模式中去,并且关中断。
3.将寄存器 lr_mode(即 r14)寄存器设置成返回地址。
4.将指令指针寄存器设置成该异常中断的中断向量地址。从而跳转到相应的异常中断处理程序处执行。

从异常中断处理程序中返回
1.恢复被中断程序的状态,即将SPSR寄存器内容复制到CPSR中
2.返回到发生中断异常指令的下一条指令处执行。即将 lr_mode寄存器的内容复制到指令指针寄存器中。

(李庚睿)
本站文章除注明转载外,均为本站原创或编译欢迎任何形式的转载,但请务必注明出处,尊重他人劳动,同学习共成长。转载请注明:文章转载自:罗索实验室 [http://www.rosoo.net/a/201206/16125.html]
本文出处:ChinaUnix 作者:李庚睿 原文
顶一下
(1)
100%
踩一下
(0)
0%
------分隔线----------------------------
发表评论
请自觉遵守互联网相关的政策法规,严禁发布色情、暴力、反动的言论。
评价:
表情:
用户名: 验证码:点击我更换图片
栏目列表
将本文分享到微信
织梦二维码生成器
推荐内容