Linux软中断实现详解(2.6.26.3)

软中断的类型:

关键数据结构和函数介绍:

in_interrupt()函数:

 

可见,宏in_interrupt()检查当前进程thread_info结构中的preempt_count字段中硬中断和软中断计数器,其全为0,才返回0.

preempt_count字段的含义:

0-7:抢占计数器,记录显示禁用本地CPU内核抢占的次数,值等于0表示允许内核抢占。

8-15:表示软中断被禁用的程度,同样值为0表示处于激活状态。

16-27:表示本地CPU中断处理程序的嵌套数。

表示软中断的主要数据结构为softirq_action类型的数组,数组名为softirq_vec。

 

 

另外一个实现软中断的数据结构是irq_cpustat_t。

  

评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值