目录: 《Linux中断管理》 《Linux中断管理 (1)Linux中断管理机制》 《Linux中断管理 (2)软中断和tasklet》 《Linux中断管理 (3)workqueue工作队列》 关键词: 工作队列的原理是把work(需要推迟执行的函数)交由一个内核线程来执行,它总是在进程上下文中 ...
分类:
系统相关 时间:
2018-05-30 01:26:18
阅读次数:
476
本质上是轮询,中断信号触发中断请求,cpu查询到中断请求之后根据当前中断寄存器配置决定是否进行中断响应。但是一般情况下的轮询是程序设定固定周期让cpu进行状态查询,是由指令控制的,没记错的话好像某本unix书里称轮询为软中断。 就连中断都是轮询 当有设备事件产生以后,设置CPU的中断引脚触发中断,而 ...
分类:
其他好文 时间:
2018-05-24 11:53:54
阅读次数:
1034
先简单说一下Signal是啥.(如果想直接使用可以不看) Signal翻译过来中文就是信号- - 当然, 本身他就是Linux系统编程中非常重要的概念, 信号机制是进程之间传递消息的一种机制, 其全称为软中断信号 作用是通知进程发生了异步事件。进程之间可以调用系统来传递信号, 本身内核也可以发送信号 ...
分类:
编程语言 时间:
2018-05-23 00:09:56
阅读次数:
274
硬中断: 1. 硬中断是由硬件产生的,比如,像磁盘,网卡,键盘,时钟等。每个设备或设备集都有它自己的IRQ(中断请求)。基于IRQ,CPU可以将相应的请求分发到对应的硬件驱动上(注:硬件驱动通常是内核中的一个子程序,而不是一个独立的进程)。 2. 处理中断的驱动是需要运行在CPU上的,因此,当中断产 ...
分类:
其他好文 时间:
2018-04-24 11:04:16
阅读次数:
144
有时会发生网络丢包现象,此处的丢包有两种,真正意义上的丢包和逻辑丢包(此处以tcp协议栈丢包为例)。之前falcon-agent也上报了相应的指标,在此处对一些疑问给出尽量详细的解释。二、linux系统pakcet接收的过程过程简单概括为?网卡收到包以后通过DMA传至ring buffer?网卡触发硬件中断,中断处理函数调用包接受软中断(softirq)?Softir
分类:
其他好文 时间:
2018-04-09 17:11:58
阅读次数:
1842
中断分类 Linux系统中,中断分为: 硬中断:由外部设备或者执行异常产生的需要快速处理的中断。如缺页中断、定时器硬件中断。 根据内部产生还是外部产生,分为: 1. 异常:异常是内部产生的中断,不可屏蔽。 2. 外部中断:外部中断是由外部设备产生的,可以屏蔽。 软中断: ? 软中断是Linux系统中 ...
分类:
系统相关 时间:
2018-03-31 13:18:13
阅读次数:
267
<什么是中断> 计算停下当前处理任务,并保存现场,转而去处理其他是任务,当完成任务后再回到原来的任务中去。 <中断的分类> a:软中断 软中断时执行中断指令产生的,软中断不用施加中断请求信号,因此中断的产生的不是随机的而是由程序安排的。内核线程是实现软中断的助手。 b:硬中断 硬中断时由外部硬件产生 ...
分类:
系统相关 时间:
2018-03-17 15:17:53
阅读次数:
233
用户程序需要系统提供服务的时候,会通过系统调用产生一个int 0x80的软中断,就会进入到系统调用的入口函数,入口函数存放在以下文件当中: 以下是系统调用的入口: ENTRY(system_call) RING0_INT_FRAME # cant unwind into user space any ...
分类:
其他好文 时间:
2018-03-10 01:25:10
阅读次数:
332
如果需要进程捕获某个信号,并作出相应的处理,就需要注册信号处理函数(其实就是内核里需要识别信号函数,类似C语言里的include某函数库)。 处理信号就类似软中断,内核为每个进程准备了一段信号向量表,记录信号的处理机制。当某个信号发生后,内核就会调用注册的函数去处理。 &
分类:
系统相关 时间:
2018-03-05 12:04:51
阅读次数:
198
信号时软中断,很多比较重要的应用程序都需要处理信号,信号提供了一种处理异步事件的方法。每个信号都一个名字,以SIG开头,在<signal.h>头文件中定义信号类型,都是正整数(信号编号)。 产生信号的条件: (1)当用户按某些终端键时,引发终端产生的信号。 (2)硬件异常产生信号。 (3)进程调用k ...
分类:
其他好文 时间:
2018-02-24 16:47:26
阅读次数:
185