Linux下时间延迟以及延缓操作
1、在内核中计时的头函数是#include |2WT{Z)K}XH v-r U
2、Hz符号指出每秒钟产生的时钟滴答数,也就是1秒钟产生的时间中断。 ehU5xb8c8b*qo3n
$C2Lm!uR4Tj|8@6t
3、#include ,P n:TQ#e G
&eE4F}'d
volatile unsigned long jiffies 用这个变量来度量时间的变化。
4、int time_after(unsigned long a, unsigned long b)
int time_before(unsigned long a, unsigned long b)
这些布尔表达式以安全的方式比较jiffies的数值,无需考虑计时器溢出的问题。
5、jiffies表示的时间和其他表示方法之间的数值转换: M%g-U ~-mT
G;f-z?Xq$qPc w'TM$\
unsigned long timespec_to_jiffies(struct timespec *value);
Q#HK?6GG%w7e/`
void jiffies_to_timespec(unsigned long jiffies, struct timespec *value);
9o#u y-bJL7W S
unsigned long timeval_to_jiffies(struct timeval *value);
void jiffies_to_timeval(unsigned long jiffies, struct timeval *value); #w KL[/YO['|
E*^8r['D `}h ]
(每次总是记不住,这次写到blog上以备后患)其中timespec和timeval是linux系统中时钟时间的结构:
,|L"vqc H}-DS
struct timeval {
%Y2kl&Mik
time_t tv_sec; /* seconds */