Advertisement

Linux内核学习笔记 -29 中断下半部代码的分析与应用

阅读量:

Linux将中断处理划分为两个阶段,在线段负责立即解决那些高度紧迫的任务,在线段则负责非紧急事务。此外,Linux内核为此设计了专门的机制,在本研究中,则采用理论课程中的tasklet机制进行实验分析

本节代码是在上节的基础上稍微增加一部分代码即可。

在中断服务例程(即上半部分)中加入tasklet的初始化函数,并对下半部分的任务进行注册。随后必须将下半部分的任务处理逻辑连接到任务队列中。最后通过调用tasklet_schedule函数来完成调度流程。

最后用到tasklet_kill,用来注销掉我们的tasklet

复制代码
 book@100ask:~/Mooc/CH06$ cat interrupt2.c

    
 #include <linux/kernel.h>
    
 #include <linux/init.h>
    
 #include <linux/module.h>
    
 #include <linux/interrupt.h>
    
  
    
 static int irq;
    
 static char * devname;
    
  
    
 module_param(irq,int,0644);
    
 module_param(devname,charp,0644);
    
  
    
 st

全部评论 (0)

还没有任何评论哟~