精华内容
下载资源
问答
  • 中断

    2013-08-13 18:05:48
    发志中断的事务称为中断源,中断包括:I/O设备、实时时钟、故障源、软件中断等。 按中断源来区分,中断可以分为内部中断和外部中断。内部中断是中央处理器内部产生的中断,在个人计算机中,内部中断又分为溢出...

    今天对中断部分进行了学习,并整理笔记

    基本概念:中断就是打断中央处理器正在执行的工作,让中央处理器去处理其他更加更要或者更为紧急的任务。发志中断的事务称为中断源,中断源包括:I/O设备、实时时钟、故障源、软件中断等。

    按中断源来区分,中断可以分为内部中断和外部中断。内部中断是中央处理器内部产生的中断,在个人计算机中,内部中断又分为溢出中断、除法错中断、断点中断、软件中断及单步中断。外部中断,中断源来自处理器之外,按照中央处理器的响应可以分为可屏蔽中断和非屏蔽中断。非屏蔽中断是中央处理器一定要响应的中断,通常是计算机发生了紧急情况,如掉电等。可屏蔽中断大多数是外设和时钟中断,在计算机处理一些不应该打断的任务时,可以通过屏蔽位来禁止响应这些中断。

    处理过程:中央处理器收到中断请求后,如果是当前允许的中断,那么要停止正在执行的代码,并把内部寄存器入栈,这个过程不能被再次打断,所以在保护现场的开始要先关中断,保护完后再开中断。这个过程应该尽量短,以避免错过了其他中断。这个过程消耗的时间称为中断响应时间。然后开始执行中断处理程序,中断处理程序常常比较简单,通常设置一些标志位,做一些简单的数据处理,而让其他更耗时的处理在非中断程序中完成。

    中断判断:当有多个中断源时,常用的处理方式有以下几种:

    1.每个中断源使自己的中断请求信号线和中央处理器相连,这种方式适用于中断源不是很多的情况,而中央处理器的外部中断引脚是有限的。

    2.统一的中断请求:由中央处理器使用专门程序依次判断是哪个中断源的请求,通过查询的次序,可以实现中断的优先级控制。

    3.硬件查询法:有一条中断确认信号链和输入/输出设备相连,某个外设发出中断请求后,中断确认信号开始在各外设间传递,发出中断请求的外设响应这个信号。

    4.总线仲裁:在这种方式中,外设必须先得到总线控制权,发出中断请求,最后将设备号通过数据总线发给中央处理器。由总线仲裁机制决定可以发信号的外设。

    5.中断向量表:中断向量表是一张不同中断处理程序入口地址的表格,用这种机制,每个中断源有不同的“中断号”,即中断向量。中央处理器收到中断信号,并概据中断号查中断向量表,以得到该中断处理程序的入口地址。

    展开全文
  • 中断类型

    千次阅读 2019-01-11 22:07:10
    中断包括软件中断(不可屏蔽)和硬件中断。 软中断为内核触发机制引起,模拟硬件中断。 硬件中断又分为外部中断(可屏蔽)和内部中断(不可屏蔽) 外部中断为一般外设请求;内部中断包括硬件出错(掉电,校验,传输...

    一、中断类型

    中断包括软件中断(不可屏蔽)和硬件中断。
    软中断为内核触发机制引起,模拟硬件中断。
    硬件中断又分为外部中断(可屏蔽)和内部中断(不可屏蔽)
    外部中断为一般外设请求;内部中断包括硬件出错(掉电,校验,传输)和运算出错(非法数据,地址,越界,溢出)

     

    二、

    中断定义:指当出现需要时,CPU暂时停止当前程序的执行转而执行处理新情况的程序和执行过程。

    硬件中断是由与系统相连的外设(比如网卡 硬盘 键盘等)自动产生的. 每个设备或设备集都有他自己的IRQ(中断请求), 基于IRQ, CPU可以将相应的请求分发到相应的硬件驱动上(注: 硬件驱动通常是内核中的一个子程序, 而不是一个独立的进程).处理中断的驱动是需要运行在CPU上的, 因此, 当中断产生时, CPU会暂时停止当前程序的程序转而执行中断请求.

    软中断不会直接中断CPU, 也只有当前正在运行的代码(或进程)才会产生软中断. 软中断是一种需要内核为正在运行的进程去做一些事情(通常为I/O)的请求.

    硬件中断和软中断的区别

    硬件中断是由外设引发的, 软中断是执行中断指令产生的.
    硬件中断的中断号是由中断控制器提供的, 软中断的中断号由指令直接指出, 无需使用中断控制器.
    硬件中断是可屏蔽的, 软中断不可屏蔽.
    硬件中断处理程序要确保它能快速地完成任务, 这样程序执行时才不会等待较长时间, 称为上半部.
    软中断处理硬中断未完成的工作, 是一种推后执行的机制, 属于下半部.
     

    展开全文
  • 中断 陷阱 软中断

    2014-08-16 21:20:44
    中断即外中断,指来自处理机和内存外部的中断包括 I/O 设备发出的 I/O中断、外部信号中断、各种定时器引起的时钟中断以及调试程序中设置的断点等引起的调试中断等。 陷阱即内中断,主要指在处理机和内存内部...

    中断即外中断,指来自处理机和内存外部的中断,包括 I/O 设备发出的 I/O中断、外部信号中断、各种定时器引起的时钟中断以及调试程序中设置的断点等引起的调试中断等。

    陷阱即内中断,主要指在处理机和内存内部产生的中断。它包括程序运算引起的各种错误。软中断是通信进程之间用来模拟硬中断的一种信号通信方式。
    中断和陷阱的主要区别:
    1 、陷阱通常由处理机正在执行的现行指令引起,而中断则是由与现行指令无关的中断源引起的。
    2 、陷阱处理程序提供的服务为当前进程所用,而中断处理程序提供的服务则不是为了当前进程的。
    3 、CPU 在执行完一条指令之后,下一条指令开始之前响应中断,而在一条指令执行中也可以响应陷阱。
    4 、在有的系统中,陷入处理程序被规定在各自的进程上下文中执行,而中断处理程序则在系统上下文中执行。
    软中断与硬中断的比较:
    相同点:其中断源发中断请求或软中断信号后, CPU 或接收进程在适当的时机自动进行中断处理或完成软中断信号所对应的功能。

    不同点:接收软中断信号的进程不一定正好在接收时占有处理机,而相应的处理必须等到该接收进程得到处理机之后才能进行


    外部中断,就是我们通常所说的中断(interrupt)。对于执行的系统来说,这种中断发生完全是"异步"的,根本无法预测到此类中断会在什么时候发生。因此,CPU(或者软件)
    对于此类外部中断完全是"被动"的。不过,软件可以通过关中断的形式来关闭对中断的响应,把它"反映情况"的途径掐断,这样就眼不见心不烦了。 软件产生的中断则不同,
    它是由专设的指令,如Intel X86的"INT n",在程序中有意地产生,所以是主动的,"同步"的。只要CPU一执行一条int指令,就知道在开始执行下一条指令之前一定要先进入
    中断服务程序,这种主动的中断我们称之为"陷阱"。 此外,还有一种与中断相似的机制称之为"异常"(exception),一般也是异步的,多半是由于"不小心"犯了规才发生的。
    例如,当你在程序中发出一条除法指令div,而除数为零时就会发生一次异常。这多半是由于不小心,而不是故意的,所以这也是被动的。当然,我们的确可以故意除以零,
    呵呵,这个就有点强词夺理了。 我终结一下,中断和异常有个比较大的共同点就是"不可预知性",所以是被迫的;而陷阱有"有意为之"的含义。其实,这种东西了解即可,
    做系统编程的时候身边备上一本Intel手册即可

    展开全文
  • 这里写目录标题先验知识回顾控制寄存器回顾1、8086中断类型1、外部可屏蔽中断2、外部不可屏蔽中断3、除法错中断4、单步中断5、断点中断6、溢出中断7、软中断2、8086中断向量表3、8086中断响应1、外部可屏蔽中断响应2...

    博主联系方式:
    QQ:1540984562
    微信:wxid_nz49532kbh9u22 QQ交流群:892023501

    先验知识回顾

    控制寄存器回顾

    1
    PSW是Program Status Word的缩写,即程序状态字(也叫程序状态寄存器)
    CS:段代码寄存器。

    1、8086中断类型

    8086用8位二进制码表示一个中断类型,共有256个中断,可分为两大类:
    1
    中断结构:
    2

    1、外部可屏蔽中断

    由INTR引入,受到标志寄存器中的中断允许标志位IF控制。
    IF=0:CPU不响应INTR中断;
    IF=1:CPU响应INTR中断;
    INTR中断的类型码范围:8~255;

    2、外部不可屏蔽中断

    由NMI引入,不受到中断允许寄存器标志位IF控制。
    NMI信号有效,且8086现行指令执行结束,且没有DMA请求:响应NMI中断
    NMI中断类型码:2

    3、除法错中断

    在执行DIV或者IDIV指令时,除数为0或商超过寄存器能够表达的范围(商溢出):执行中断。
    中断类型号:0.
    (我寻思着,在做除法操作的时候就可以避免这种现象的存在,没有必要搞个中断啊。。。)

    4、单步中断

    受到标志位寄存器中的陷阱标志位TF控制。
    TF=1:CPU每执行完一条指令就引起一个内部中断。
    TF=0:无
    中断类型号:1
    用途:用于实现但不操作,是一种强有力的调试手段。(联系debug中相关操作)

    5、断点中断

    由INT3指令产生的内部中断。
    在程序调试过程中,需要跟踪程序走向,了解程序执行过程中的中间结果时,可以用INT3指令临时替代原有的指令,称为设置断点。
    中断类型号:3

    6、溢出中断

    受到标志寄存器中的溢出标志位OF控制。
    若上条指令执行结果使OF=1,则产生中断。
    中断类型号:4

    7、软中断

    由INTn指令产生。
    中断类型码:n

    2、8086中断向量表

    两个知识点:
    中断向量:中断指针,是中断服务程序的入口地址
    中断向量表:中断类型号与对应的中断服务函数入口地址的换算表。
    8086的中断向量表如下:
    1

    3、8086中断响应

    1、外部可屏蔽中断响应

    1、等待当前指令结束,然后进入中断响应周期。
    2、CPU获取中断类型号
    3、当前的PSW、CS、IP的内容依次压入栈中。(保存了断点的状态和断点地址,以便返回时恢复)
    4、清除PSW中的IF位和TF位。(IF=0意味着关中断,这里不包含中断嵌套)
    5、把中断服务函数的入口地址置入IP和CS
    6、完成响应,进入中断服务函数

    2、外部不可屏蔽中断响应

    中断请求在NMI端加入。
    等待当前指令执行结束.如果同时出现非屏蔽和可屏蔽中断请求,CPU优先响应非可屏蔽。
    中断类型号由硬件决定,不需要从外部获取。其他操作与可屏蔽中断相同

    3、内部中断响应

    内部中断的响应操作的共同特点:
    1、中断类型号来源于:指令码、CPU硬件,不需要从外部获取
    2、没有INTA’信号的响应周期
    3、不受到IF位的控制,但单步中断受TF位控制
    4、除单步中断之外,其他内部中断都比外部中断优先响应
    5、同样执行可屏蔽中断的3、4、5操作
    特别说明:
    中断响应时应清除TF标志位意味着什么?
    TF=1,没执行完一条指令都引起一次单步中断。如果不清除,将不停地引起中断,每次中断都执行同一条指令而不能反悔。
    所以,中断服务函数期间TF=0,等到IRET指令恢复PSW值是,才恢复TF位。

    4、8086中断返回

    无论内部外部中断,中断返回都是由中断服务函数的末尾设置IRET指令实现的。
    IRET指令的操作是:恢复断点处的地址和PSW内容:依次从堆栈中弹出保存的IP、CS、PSW值,使被中断的程序继续执行


    参考书籍:

    《微机原理与接口技术》

    展开全文
  • ...■看图理解:硬件中断与软件中断...1、8086/8088CPU可以处理256种不同类型的中断,每一种中断都给定一个编号(0~255),称为中断类型号,CPU根据中断类型号来识别不同的中断源; 2、中断类型号0~4已有固定对应
  • 中断 中断信号 中断

    千次阅读 2012-03-06 10:35:37
    中断概述:  什么是中断,简单地说就是CPU在忙着作自己的事情,这时候硬件(比如说键盘按了一下)触发了一个电信号,这个信号通过中断线到达中断控制器(cpu),控制器接受到这个信号,向CPU发送INT信号申请CPU来...
  • linux 中断中断处理

    千次阅读 2018-07-30 15:47:16
    从物理学角度看,中断是一种电信号,中断是硬件发出,送入中断控制器的输入引脚中,中断控制器是个简单的电子芯片,其作用是将多路中断管线,采用复用技术只通过一个和处理器连接的管线与处理器通信。当接受到一个...
  • 中断 TMOD:定时器/计数器工作方式寄存器 TCON:定时器/计数器控制寄存器 IE:中断允许控制寄存器 IP:中断优先级控制寄存器 外部中断0 外部0中断触发:(P3.2口触发;P3.2触发;P3.2触发) 若IT0=0,则为低电平触发...
  • 中断中断处理过程

    万次阅读 多人点赞 2019-07-24 22:00:23
    1. 中断和异常的概念区别 Intel的官方文档里将中断和异常理解为两种中断当前程序执行的不同机制。这是中断和异常的共同点。 不同点在于: 中断(interrupt)是异步的事件,典型的比如由I/O设备触发;异常...
  • zynq有三种中断:软中断(software interrtpts),私有外设中断(private peripheral)和共享外设中断(shared perlpherals)。区别在于私有外设中断和共享外设中断含有PL测引入的中断。*每个中断都有自己ID号。*有一个...
  • 中断和异常

    千次阅读 2016-07-24 21:01:10
    中断和异常 中断和异常概述 中断和异常的作用是指示系统中的某个地方发生一些事件, 需要引起处理器(包括正在执行中的程序和任务)的注意. 当中断和异常发生时, 典型的结果是迫使处理器将...中断包括硬件中断和软中断.
  • 【STM32】NVIC中断优先级管理(中断向量表)

    万次阅读 多人点赞 2018-04-08 19:55:22
    Cortex-M3内核支持256个中断,其中包含了16个内核中断(异常)和240个外部中断,并且具有256级的可编程中断设置。但是,STM32并没有使用CM3内核的全部东西,而是只用了它的一部分。STM32有84个中断包括16个内核...
  • 中断向量,中断向量表 ,中断服务函数

    千次阅读 多人点赞 2019-07-29 12:31:52
    所谓中断是指CPU在正常执行程序的过程中,由于内部/外部事件的触发或由程序的预先安排,引起CPU暂时中断当前正在运行的程序,而转去执行为内部/外部事件或程序预先安排的事件的服务子程序,待中断服务子程序执行完毕...
  • 中断测试

    千次阅读 2019-04-11 19:30:37
    中断详细包括以下: 来电中断:呼叫挂断、被呼叫挂断、通话挂断、通话被挂断 短信中断:接收短信、查看短信 其他中断:蓝牙、闹钟、插拔数据线、手机锁定、手机断电、手机问题(系统死机、重启) 中断场景: 在...
  • 中断向量

    千次阅读 2019-04-25 14:14:45
    中断向量是中断服务程序的入口地址,在计算机中中断向量的地址存放一条跳转到中断服务程序的跳转指令。 中断地址是存储中断向量的内存单元。 中断向量表:用来存放中断向量(共256个),它的地址范围是0~3FFH 在...
  • CPU中断

    千次阅读 2019-08-31 21:03:36
    32~47:分配给可屏蔽中断,由I/O设备引起的中断,这其中就包含可由两个8259A级联响应的15个; 48~255:用来标识软中断; CPU中断的机制概论 cpu的数学模型是图灵机,图灵机是一个线性运行指令的机器,它的...
  • 中断控制 ( 基于 S3C6410 开发板 ) 1. 关闭中断的两个步骤 (1) 关闭中断步骤 2. CPRS 寄存器中的中断控制位 (1) CPRS 寄存器位 3. (1) CPRS 寄存器位 一. 中断控制 ( 基于 S3C6410 开发板 ) ...
  • linux中断--中断嵌套&中断请求丢失

    千次阅读 2014-04-14 20:06:04
    在linux内核里,如果驱动在申请注册中断的时候没有特别的指定,do_irq在做中断响应的时候,是开启中断的,如果在驱动的中断处理函数正在执行的过程中,出现同一设备的中断或者不同设备的中断,这时候新的中断会被...
  • 中断详解

    千次阅读 2018-10-24 01:28:04
    1.中断的基本概念 程序中断是指在计算机执行现行程序的过场中,出现某些急需处理的异常情况或特殊请求,CPU暂停中断现行程序,而专区对这些异常情况或特殊情况进行处理,在处理完毕后CPU又自动返回到现行程序的断点...
  • 文章目录中断概念中断实现中断注册中断标志**共享中断**:中断处理程序释放...在 linux 驱动程序中,为设备实现一个中断包含两个步骤: 向内核注册中断 实现中断处理函数 中断注册 request_irq 用于实现中断的注册...

空空如也

空空如也

1 2 3 4 5 ... 20
收藏数 473,659
精华内容 189,463
关键字:

中断的包括