CLOCK_MONOTONIC 指的是 monotonic time,而 CLOCK_REALTIME 指的是 wall time。
monotonic time 的字面意思是单调时间,实际上,指的是系统启动之后所流逝的时间,这是由变量 jiffies 来记录的,当系统每次启动时,jiffies 被初始化为 0,在每一个 timer interrupt 到来时,变量 jiffies 就加上 1,因此这个变量代表着系统启动后的流逝 tick 数。jiffies 一定是单调增加的,因为时间不可逆。
wall time 的字面意思是挂钟时间,实际上,指的是现实的时间,这是由变量 xtime 来记录的。系统在每次启动时,将 CMOS 上的 RTC 时间读入 xtime,这个值是自从 1970 年 1 月 1 日起经历的秒数,在每一个 timer interrupt 到来时,变量 xtime 也会加上 1。
注意,xtime 不一定是单独增加的。因为 wall time 是指现实中的实际时间,如果系统要与网络中某个节点时间同步,或者系统管理员觉得 wall time 与现实的时间不一致,就可能随意地更改这个 wall time。最常见的情况,用户可以去任意修改系统时间,这个被修改的时间就是 wall time。
链接:https://www.jianshu.com/p/b2b0be67fd59
标签:REALTIME,wall,CLOCK,MONOTONIC,xtime,jiffies,时间,time From: https://www.cnblogs.com/tryst/p/18128349