Linux内核高分辨率计时器
hrtimer是一个选项。
http://lwn.net/Articles/167897/
这是我的工作:
#include <linux/interrupt.h>#include <linux/hrtimer.h>#include <linux/sched.h>static struct hrtimer htimer;static ktime_t kt_periode;static void timer_init(void){ kt_periode = ktime_set(0, 104167); //seconds,nanoseconds hrtimer_init (& htimer, CLOCK_REALTIME, HRTIMER_MODE_REL); htimer.function = timer_function; hrtimer_start(& htimer, kt_periode, HRTIMER_MODE_REL);}static void timer_cleanup(void){ hrtimer_cancel(& htimer);}static enum hrtimer_restart timer_function(struct hrtimer * timer){ // @Do your work here. hrtimer_forward_now(timer, kt_periode); return HRTIMER_RESTART;}


