linux内核定时器

简单介绍一下linux提供内涵定时器的相关数据结构

struct timer_list {
       struct list_head entry;
        unsigned long expires;//定时器到期时间

        void (*function)(unsigned long);//定时器到期后执行的函数
        unsigned long data;

        struct tvec_t_base_s *base;
#ifdef CONFIG_TIMER_STATS
         void *start_site;
         char start_comm[16];
         int start_pid;
#endif
}; //此结构体的一个实例对应一个定时器

 

struct  timer_list   my_timer;// 定义一个定时器

 

void  init_timer(struct  time_list  * timer);//初始化定时器

 

TIME_ININTALIZER(_function,_expires,_data)  //此宏给定时器结构体赋值

 

DEFINE_TIME(_name,_functon,_expires,_data) //此宏定义+初始化+赋值

 

static inline void setup_timer(struct timer_list * timer, void (*function)(unsigned long),  unsigned long data);//初始化+赋值

 

void  add_timer(struct timer_list * timer);//注册内核定时器

 

int  del_timer(struct  timer_list  *timer);//删除定时器

 

int  mod_timer(struct  timer_list  *timer,  unsigned long expires);//修改定时器到期时间

 

阅读更多
个人分类: linux
想对作者说点什么? 我来说一句

内核定时器的使用 linux timer

2009年09月18日 47KB 下载

没有更多推荐了,返回首页

不良信息举报

linux内核定时器

最多只允许输入30个字

加入CSDN,享受更精准的内容推荐,与500万程序员共同成长!
关闭
关闭