转自:http://blog.csdn.net/honour2sword/article/details/40213417 问题: 1. 中断向量,中断向量表, 中断服务程序,中断IRQ号,几个怎么理解? CPU根据中断号来获取中断向量值,从而获取中断服务程序的入口地址。 ...
分类:
其他好文 时间:
2016-08-17 23:03:23
阅读次数:
130
arm IRQ入口在 cpukit/score/arm/arm_exec_interrupt.S 中,其中BSP最关心就是 bl bsp_interrupt_dispatch 这句,看看beagle BSP的实现, c/src/lib/libbsp/arm/beagle/irq.c,实现很简单,找到 ...
分类:
其他好文 时间:
2016-08-03 22:03:03
阅读次数:
157
转自:http://blog.csdn.net/luckywang1103/article/details/42083613 void spin_lock(spinlock_t *lock); void spin_lock_irq(spinlock_t *lock); void spin_lock_ ...
分类:
其他好文 时间:
2016-08-02 19:18:00
阅读次数:
160
irq默认linux自动启动的,但是往往它自己控制不是很好(CPUSI经常某个CPU占用大)通常碰到大流量的,通常我们会把自动启动的irqblance关闭,然后手动指定一下IRQ进行优化:看CPU的si利用率:看设备的ID号:配置指定的CPU:(1表示第1个,2表示第2个,4表示第4个,8表示第4个,这是..
分类:
系统相关 时间:
2016-07-31 16:07:26
阅读次数:
1695
全称程序状态寄存器,一共有32位,其中分为4个8位的域,分别用CXSF来表示 C:控制位域【0,7】 中断禁止位: I=1,IRQ被禁止 MSR R0,CPSR ORR R0,R0,#0x80 MSR CPSR_C,R0 MOV PC,LR 终端禁止位:F=1,FIQ被禁止 T位是处理器的状态控制位 ...
分类:
其他好文 时间:
2016-07-22 14:20:01
阅读次数:
232
转自:http://blog.chinaunix.net/xmlrpc.php?r=blog/article&uid=21977330&id=3755609 在linux里,中断处理分为顶半(top half),底半(bottom half),在顶半里处理优先级比较高的事情,要求占用中断时间尽量的短 ...
分类:
系统相关 时间:
2016-07-04 11:48:27
阅读次数:
257
转自:http://blog.chinaunix.net/uid-25445243-id-4052877.html 一、中断申请和释放函数1.1、申请函数 在linux内核中用于申请中断的函数是request_irq(),函数原型在Kernel/irq/manage.c中定义: int reques ...
分类:
其他好文 时间:
2016-06-28 12:37:25
阅读次数:
150
1.中断屏蔽: 单CPU范围内避免竞态的一种简单方法:在进入临界区之前屏蔽系统的中断。中断屏蔽将使得中断与进程之间的并发不再发生,而且Linux内核的进程调度等操作都依赖中断来实现,内核抢占式进程之间的并发也就得以避免。 操作步骤: local_irq_disable() //屏蔽中断 critic ...
分类:
系统相关 时间:
2016-06-25 06:11:16
阅读次数:
167
1 中断,很短的时间过去,然后回来。2 信号,软中断,而中断属于硬中断。3 实时内核,和分时内核。4 同步,预先知道发生,异步,预先不知道要发生,中断属于异步。5 arm一次执行一个中断。6 irq中断,2现在内核支持这个,fiq,快速中断请求。7 问题:两个中断同时发生? 更具优先级,一个一个执行 ...
分类:
其他好文 时间:
2016-06-21 20:26:42
阅读次数:
130
Linux 中,当外设触发中断后,大体处理流程如下:
a -- 具体CPU architecture相关的模块会进行现场保护,然后调用machine driver对应的中断处理handler;
b -- machine driver对应的中断处理handler中会根据硬件的信息获取HW interrupt ID,并且通过irq domain模块翻译成IRQ number;
c -...
分类:
其他好文 时间:
2016-06-21 07:14:19
阅读次数:
152