- 如何度量时间差,如何比较时间
- 如果获得当前时间
- 如何将操作延迟指定的一段时间
- 如何调度异步函数到指定的时间之后执行
度量时间差
Linux时钟中断由系统定时硬件产生,这个间隔由内核根据HZ的值设定。定义在<linux/param.h>
每次中断发生,内核计数器的值就加1,成为jiffies_64。或者jiffies,这个更快,32位的可以是原子操作。
使用jiffies计数器
需要include <linux/jiffies.h>,jiffies和jiffies_64都是只读变量。
unsigned long j,stamp
j = jiffies;
stamp = j + HZ; 未来1秒
stamp = j + HZ/2; 未来1/2秒