softirq相关内容
我知道有进程上下文和中断上下文,但我不明白在执行softirq或tasklet时,它是在哪个上下文下运行的. 我看到有些人使用术语“下半部分上下文",如果有这样的术语,与其他术语相比有什么区别. softirq 和 tasklet 的另一个问题是为什么在执行过程中不允许睡眠?? 谁能帮我找出这些问题,谢谢!! 解决方案 softirq 和 tasklet 都是一种底层机制
..
我想在 linux 内核中创建我自己的 softirq.这样做是否正确: 在模块的 init 中,我想触发 softirq 从我将添加一个调用到: 394 void open_softirq(int nr, void (*action)(struct softirq_action *))395 {第396话第397话 在代码片段中,我想提高 softirq,我将添加对 raise_sof
..
local_bh_disable 禁用下半部分(softirqs)的处理.Softirq可以在中断返回路径上处理,也可以通过ksoftirqd-(每个cpu)线程处理,如果系统承受大量softirq负载,则该线程将被唤醒. preempt_disable 禁用抢占,这意味着,当线程在 preempt_disable preemt_enable 范围内执行时,它将不会由调度程序进入睡眠
..
我知道有进程上下文和中断上下文,但是我不知道在执行softirq或tasklet时会在哪个上下文下运行. 我已经看到有些人使用“下半上下文"一词,如果有这样的话,与其他人相比有什么区别. softirq和tasklet的另一个问题是为什么在执行过程中不允许睡眠? 任何人都可以帮助我确定这些问题,谢谢! 解决方案 softirq和tasklet都是下半部机制.不允许睡眠,因
..
我想创建Linux内核我自己的软中断。是不是这样做的正确方法: 在的init 模块的我想触发软中断从我会加入到呼叫 394无效open_softirq(INT NR,无效(*动作)(结构softirq_action *)) 395 { 396 softirq_vec [NR] .action =行动; 397} 而在片段,我想提高我的softirq将添加一个调用 raise_softir
..