linux - 可靠地找到同一台机器上两个时钟之间的偏移量

标签 linux time posix real-time

clock_gettime(2) 的 Linux 手册页很好地解释了 CLOCK_REALTIMECLOCK_MONOTONIC 之间的含义差异。在任何给定时间,这两个时钟都会偏移一些不同的偏移量。我想跟踪这个偏移量。一个简单的近似是

struct timespec rtime, mtime;
clock_gettime(CLOCK_REALTIME, &rtime);   
clock_gettime(CLOCK_MONOTONIC, &mtime);
// subtract the timespecs here.

但是两次调用之间存在不可预测的延迟。内核能否在单个“原子”操作中给我可靠的偏移量估计?

顺便说一句:我认为 Starting point for CLOCK_MONOTONIC 中的 OP想要相同的信息。但是那里的回答者似乎在回答不同的问题,所以我想我会用我自己的话来问。

最佳答案

adjtimex将返回有关系统时钟相对于先前的 adjtime 调用如何变化的状态的信息。这可能不完全符合您的要求,但它可能会为您提供足够或等效的信息来满足您的任何需求。

关于linux - 可靠地找到同一台机器上两个时钟之间的偏移量,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/31187492/

相关文章:

linux - 从 ls 中提取子字符串

c - 用于文件传输的多个套接字连接

c++ - 符号引用错误

c - 程序在 pthread 锁上自旋

linux - Tomcat6 -> 如何将项目放入根文件夹?

python - 如何独立于语言安装(linux)在python中获取用户桌面路径

java - 计算一天中两次之间的小时差

javascript - 无限循环检查时间

ruby-on-rails - 在 ruby​​ 假时间中四舍五入到最接近的半小时或小时?

我可以要求内核填充(故障)一系列匿名页面吗?