0
  • 聊天消息
  • 系统消息
  • 评论与回复
登录后你可以
  • 下载海量资料
  • 学习在线课程
  • 观看技术视频
  • 写文章/发帖/加入社区
创作中心

完善资料让更多小伙伴认识你,还能领取20积分哦,立即完善>

3天内不再提示

ARM Linux各种驱动的中断服务程序工作在ARM的IRQ模式吗?

Linux阅码场 来源:未知 作者:李倩 2018-07-27 14:54 次阅读

大家都知道,ARM有IRQ, FIQ, USR,SVC,ABORT等各种模式。当系统收到IRQ的时候,会进入ARM的IRQ模式。那么,ARM Linux各种驱动的中断服务程序工作在ARM的IRQ模式吗?

答案是否定的。

我们加一段汇编来读CPSR:

然后我们随便找一个ARM Linux的中断服务程序去打印CPSR:

然后我们发现打印出来的值是:

cpsr:40000193

低8位的二进制是10010011

那么对应ARM CPSR的查询,可以看出CPU处于ARM的SVC模式(低5位是10011),而且I bit被设置(第7位是1),所以是禁止IRQ的。

模式表:

可见,ARM Linux最初进入IRQ模式后,比较快速地从IRQ模式切换到了SVC模式,但是这个时候,并没有使能CPSR的I bit,所以仍然是禁止其他中断嵌套进入的。

(完)

声明:本文内容及配图由入驻作者撰写或者入驻合作网站授权转载。文章观点仅代表作者本人,不代表电子发烧友网立场。文章及其配图仅供工程师学习之用,如有内容侵权或者其他违规问题,请联系本站处理。 举报投诉
  • ARM
    ARM
    +关注

    关注

    134

    文章

    8634

    浏览量

    361578
  • Linux
    +关注

    关注

    87

    文章

    10969

    浏览量

    206654
  • 中断服务
    +关注

    关注

    0

    文章

    9

    浏览量

    6803

原文标题:ARM Linux的中断服务程序工作在ARM的IRQ模式吗?

文章出处:【微信号:LinuxDev,微信公众号:Linux阅码场】欢迎添加关注!文章转载请注明出处。

收藏 人收藏

    评论

    相关推荐

    ARM处理器及ARM处理器工作模式

    的Thumb指令。程序的执行过程中,微处理器可以随时两种工作状态之间切换,并且,处理器工作状态的转变并不影响处理器的
    发表于 01-27 11:13

    ARM处理器及ARM处理器工作模式

    的Thumb指令。程序的执行过程中,微处理器可以随时两种工作状态之间切换,并且,处理器工作状态的转变并不影响处理器的
    发表于 01-27 14:19

    ARM中断模式IRQ)和快速中断模式(FIQ)区别比较

    IRQ高。 4、FIQ模式下,比IRQ模式多了几个独立的寄存器。 不要小看这几个寄存器,ARM在编译的时候,如果你FIQ
    发表于 10-13 10:43

    ARM中断原理及中断嵌套

    。 当I位和F位为0时,irq pin上有中断信号过来时,就会打断arm的当前工作,并且切换到IRQ模式
    发表于 10-13 21:16

    ARM处理器工作模式

    处于ARM状态。三、ARM体系的CPU有以下7种工作模式1、用户模式(Usr):用于正常执行程序
    发表于 11-06 10:43

    简述ARM的2种工作状态和7种工作模式

    模式下的其他6中模式,有SVC,FIQ,IRQ,ABT,UND,SYS 都可以修改CPSR寄存器、从而控制ARM工作
    发表于 08-20 12:30

    ARM的2种工作状态和7种工作模式。[附带文档下载]

    模式下的其他6中模式,有SVC,FIQ,IRQ,ABT,UND,SYS 都可以修改CPSR寄存器、从而控制ARM工作
    发表于 08-20 09:14

    基于ARM架构的linux中断工作原理是什么

    最近在看一些关于arm linux中断方面的资料,看了很多资料,总结一下自己对linux中断的理解,写到这里供大家参考,以下所有的描述都是
    发表于 05-30 09:23

    ARM处理器7种工作模式

    user模式下的其他6中模式,有SVC,FIQ,IRQ,ABT,UND,SYS 都可以修改CPSR寄存器、从而控制ARM工作
    发表于 12-15 10:15

    ARM向量中断机制在uClinux下的设计

    ARM体系结构中,硬件产生的外部中断( IRQ) 具有单一的程序入口。为了识别中籽源,进而运行对应的中断
    发表于 06-27 15:45 64次下载
    <b class='flag-5'>ARM</b>向量<b class='flag-5'>中断</b>机制在uClinux下的设计

    ARM处理器七种工作模式及特点的介绍

    1、ARM处理器工作模式有几种?各种工作模式下分别有什么特点? 答:
    发表于 09-30 11:08 14次下载

    ARM7和ARM-Cortex的区别,ARM为什么会有两种启动方式?

    IRQ,FIQ定义: 这就是个普通中断,当我们程序定义了该中断,并且在程序运行的时候产生了IRQ
    的头像 发表于 10-27 11:20 9589次阅读

    ARM中断原理以及中断嵌套

    我们可以假设ARM核心有两根中断引脚(实际上是看不见的),一根叫 irq pin, 一根叫fiq pin。在ARM的cpsr中,有一个I位和一个F位,分别用来禁止
    的头像 发表于 04-07 10:29 2942次阅读

    如何在特权模式下用arm汇编指令使能和禁止irq中断

    如何在特权模式下用arm汇编指令使能和禁止irq中断? 在 ARM 系统中,中断是非常常见的一种
    的头像 发表于 10-19 16:42 754次阅读

    arm中断是怎么实现的

    ARM中断的实现是通过中断控制器和异常模式实现的。ARM处理器通过中断控制器来接收和处理外部的
    的头像 发表于 01-05 15:18 255次阅读