Chinaunix首页 | 论坛 | 博客
  • 博客访问: 15498072
  • 博文数量: 2005
  • 博客积分: 11986
  • 博客等级: 上将
  • 技术积分: 22535
  • 用 户 组: 普通用户
  • 注册时间: 2007-05-17 13:56
文章分类

全部博文(2005)

文章存档

2014年(2)

2013年(2)

2012年(16)

2011年(66)

2010年(368)

2009年(743)

2008年(491)

2007年(317)

分类:

2007-10-07 18:57:58

我对IRQ、FIQ和SWI的理解[gliethttp]

文章来源:http://gliethttp.cublog.cn[转载请声明出处]

1.同时在AXD中arm7tdmi内核模拟中断也出现同样的现象,当模拟发生IRQ的当即,
  pc指针指向0x18的同时"I"被自动置1,禁止IRQ
  当在IRQ执行的过程中,如果"I"被清0,那么IRQ会立即嵌套发生[gliethttp]
2.同时在AXD中arm7tdmi内核模拟中断也出现同样的现象,当模拟发生FIQ的当即,
  pc指针指向0x1C的同时"F""I"都被自动置1,禁止FIQ和IRQ[gliethttp]
3.当发生IRQ的时候,"I"被自动置1,禁止IRQ中断嵌套,IRQ处理程序执行了一会之后,突然FIQ到达,
  那么arm内核会立即跳转到FIQ执行,"F""I"都被自动置1,禁止FIQ和IRQ,FIQ的spsr其值为IRQ中执行处理程序时
  的CPSR,当FIQ代码执行完毕之后,恢复到IRQ中继续执行IRQ处理程序.
4.swi可以嵌套,不论什么时候,什么地点,只要执行swi,arm内核就会跳转到0x08地址处开始执行swi程序
5.swi等同于IRQ,也就是说,当触发swi软中断的同时"I"也会被自动置1,禁止IRQ[gliethttp].

阅读(5345) | 评论(0) | 转发(0) |
给主人留下些什么吧!~~