linux内核之高精度定时器
低精度定时器在一些特殊场合不能达到定时要求,故引出高精度定时器;
struct hrtimer结构体
高精度定时器在内核中是以struct hrtimer结构体对象表示:
头文件: linux/krtimer.h
struct hrtimer {
struct timerqueue_node node;
ktime_t _softexpires;
enum hrtimer_restart (*function)(struct hrtimer *);//计时器到期回调函数
struct hrtimer_clock_base *base;//指向计时器基数的指针;
u8 state; //状态信息
u8 is_rel;//若计时器已启用,则设置;
u8 is_soft;//在软中断上下文中设置hrtimer是否过期;
};
ktime_t
高精度定时器是以ktime_t来定义时间的;
操作函数如下:
typedef s64 ktime_t;
//将秒和纳秒转ktime_t
linux内核之高精度定时器最先出现在Python成神之路。
共有 0 条评论