您的位置:首页 > 运维架构 > Linux

linux内核启动(2)——2.6.内核时钟

2009-09-04 17:08 302 查看
2.6. 内核时钟

现在我们来看看内核时钟。内核时钟常用来为细节函数(时钟处理函数)分派执行时间。主数据结构timer_list定义在include/linux/timer.h文件中:

struct timer_list {
struct list_head list;
unsigned long expires;
unsigned long data;
void (*function)(unsigned long);
volatile int running;
};

list字段用于链接内部链表,操作时由timerlist_lock同步锁保护。expires字段表示了处理函数在以data数据为参数被调用的时间数值。running字段用于SMP机上标识时钟处理函数当前是否运行在其他CPU上。
函数add_timer()和del_timer()用于从链表中增加和删除一个时钟。当时钟终止时,它自动被移出。在时钟被使用之前,它必须被init_timer函数初始化;在其被添加到链表之前,function字段和expires字段必须被设置。
内容来自用户分享和网络整理,不保证内容的准确性,如有侵权内容,可联系管理员处理 点击这里给我发消息
标签: