`
emowuyi
  • 浏览: 1477976 次
文章分类
社区版块
存档分类
最新评论

linux下与中断相关的概念

 
阅读更多

中断(interrupt)、软件断、异常(exception)、陷阱(trap)、故障(fault)、终止(abort)、信号、同步、异步、阻塞、非阻塞之间的区别

1、中断与异常

广义的讲,linux下只有两种中断,同步的中断和异步的中断,这是中断最基本的两种概念,同步和异步中断就说明了中断的所有类型。
同步的中断:一条指令执行完后,才可能发生;该中断由CPU的控制单元产生。
异步的中断:可以在指令执行过程中发生(中断发生是随机的,但必须在指令执行后才能跳转去执行IRQ);异步中断由CPU的外部硬件产生。
而Intel 的官方资料,将同步中断称为异常(exception),异步中断被称为中断(interrupt)。

2、中断、故障、陷阱、终止、软中断
把同步的中断和异步的中断分类在细一些,可以分成这四种,故障、陷阱、终止都是同步的中断。
中断:来自I/O设备的信号,就是异步的中断,由cpu的外部硬件产生。
故障:潜在的可恢复的错误,cpu执行指令产生(除零)。
陷阱:有意的异常,指令执行或执行完成(int软中断,调试)。(内存溢出 和 除法溢出属于哪类???)
终止:不可恢复的错误,cpu不知道该干什么了。
陷阱即所谓的软中断,是一种同步的中断,是CPU内部的控制单元产生的中断。

3、同步、异步、阻塞、非阻塞
消息发送:
同步:等待消息发送完成,收到回复语句后,在执行其他功能(发送下一个数据包)
异步:消息发送后就,不等接收方回复,直接执行其他功能
等待消息:
阻塞:
非阻塞:
同步和异步这两个概念与消息的通知机制有关;阻塞和非阻塞这两个概念与程序等待消息(无所谓同步或者异步)时的状态有关;同步和异步仅仅是关于所关注的消息如何通知的机制,而不是处理消息的机制。
4、信号
中断和异常都可以产生信号,比如按键(ctrl+c),除0,引用无效内存,kill函数。


参考:
[5] apue
分享到:
评论

相关推荐

    linux设备驱动中断.doc

    讲述Linux设备驱动中断的过程,中断概念:这就不多说了。 中断的分类: 1)根据中断来源分为:内部中断和外部中断。内部中断来源于CPU内部(软中断指令、溢出、语法错误等),外部中断来自CPU外部,由设备提出请求。...

    Linux中断解析,Linux中断解析

    本章将向读者依次解释中断概念,解析Linux中的中断实现机理以及Linux下中断如何被使用。作为实例我们第一将向《i386体系结构》一章中打造的系统加入一个时钟中断;第二将为大家注解RTC中断,希望通过这两个实例可以...

    深入剖析Linux中断机制

    首先介绍了中断的一些基本概念,然后分 析了面向对象的 Linux 中断的组织形式、三种主要数据结构及其之间的关系。随后介绍了 Linux 处理异常和中断的基本流程, 在此基础上分析了中断处理的详细流程, 包括保存现场...

    01_异常与中断的概念及处理流程1

    第十七章 异常与中断的概念及处理流程本文来自“Linux系列教程之快速入门”里的“嵌入式Linux驱动开发基础知识”。在“Linux系列教程之快速入门”里,它是

    Linux系统系统内核分析系列_2 Linux的中断和异常处理

    中断向量的概念就是由此引出的,其实它就是一个被送通往CPU数据线的一个整数。CPU给每个IRQ分配了一个类型号。 中断有很多类,可能是外部硬件触发,也可能是由软件触发,对于CPU来说,中断处理的过程都是一样的:...

    Linux 中断的上半部和下半部

    与Linux中断息息相关的一个重要概念是Linux中断分为两个半部:上半部(tophalf)和下半部(bottom half)。上半部的功能是登记中断,当一个中断发生时,它进行相应地硬件读写后把中断例程的下半部挂到该设备的下半部...

    深入分析Linux内核源码.chm

    1.1 GNU与Linux的成长 1.2 Linux的开发模式和运作机制 1.3走进Linux内核 1.4 分析Linux内核的意义 1.5 Linux内核结构 1.6 Linux内核源代码 1.7 Linux内核源代码分析工具 第二章 Linux运行的硬件基础 2.1 i386的...

    linux下进程的管道通信和软中断通信

    加深对进程概念的理解,明确进程和程序的区别。进一步认识并发执行的实质,并了解Linux系统中进程通信的基本原理。

    Linux程序设计参考书-六部

    第1章硬件基础与软件基础1.1 硬件基础1.1.1 CPU1.1.2 存储器1.1.3 总线...中断处理与设备驱动程序第7章文件系统第8章网络第9章内核机制与模块第10章处理器第11章Linux内核源代码第12章Linux 数据结构附录A 有用的Web...

    linux设备驱动归纳总结

    十分适合linux驱动初学者,为今后Android驱动开发打下坚实的基础 (一):内核的相关基础概念 (二):模块的相关基础概念 (三):1_字符型设备之设备申请 (三):2_字符型设备的操作open、close、read、write ...

    嵌入式Linux应用程序开发标准教程(第2版全)

    接着系统地讲解了嵌入式Linux的环境搭建,以及嵌入式Linux的I/O与文件系统的开发、进程控制开发、进程间通信开发、网络应用开发、基于中断的开发、设备驱动程序的开发以及嵌入式图形界面的开发等,并且还安排了丰富...

    嵌入式系统/ARM技术中的Linux外部中断程序的前半部分和后半部分

    Linux把外部中断从概念上分为前半(top half,th)部分和后半(bottom half,bh)部分两部分。前者是响应中断之后被立即执行的部分;后者是可在稍后某个时候执行的部分。因此,在中断服务程序的设计时,要设计两个...

    嵌入式linux内核下串行驱动程序的实现.pdf

    阐述了linux下驱动程序的基本概念和中断处理方法 ,以 uClinux下的异步串 行口为例 ,详细分析了串行驱动的实现过程 ,该方法和思路为在嵌入式 linux下访问 其他串行通信外设提供了很好的借鉴。

    Linux-interrupt

    本章将向读者依次解释中断概念,解析Linux中的中断实现机理以及 Linux 下中断如何被使用。

    Linux2.6内核标准教程(共计8-- 第1个)

    4.1 进程与线程的概念 129 4.1.1 程序与进程 129 4.1.2 进程与线程 129 4.2 进程描述符 131 4.2.1 进程标识符 132 4.2.2 进程的状态 132 4.2.3 进程上下文 134 4.2.4 当前进程 139 4.3 进程的组织...

    Linux编程从入门到精通

    6.1 中断与中断处理 60 6.1.1 可编程中断控制器 61 6.1.2 初始化中断处理数据结构 61 6.1.3 中断处理 62 6.2 设备驱动程序 63 6.2.1 测试与中断 64 6.2.2 直接存储器访问(DMA) 65 6.2.3 存储器 66 6.2.4 设备驱动...

    Linux内核工作原理 word版本 强烈推荐

    虽然处理中断有通用的机制与接口,但某些细节是与硬件及CPU体系结构相关的。 Linux的一个长处是其对现代PC的硬件设备强有力的支持。设备驱动程序一章将描叙Linux核心是如何控制系统中的物理设备。 文件系统一章...

    深入分析Linux内核源码

    1.1 GNU与Linux的成长 1.2 Linux的开发模式和运作机制 1.3走进Linux内核 1.3.1 Linux内核的特征 1.3.2 Linux内核版本的变化 1.4 分析Linux内核的意义 1.4.1 开发适合自己的操作系统 1.4.2 开发高水平软件...

    Linux编程从入门到精通.rar

    第四部分 Linux内核概念系统结构 第1章 系统结构 第2章 子系统的系统结构 第3章 结论 336 ------------------------\ 第五部分 Linux内核具体系统结构 第1章 前言 第2章 系统结构 345 第3章 子系统结构 34 第4章 ...

Global site tag (gtag.js) - Google Analytics