C 如何在两个不同的进程之间同步时间?

C 如何在两个不同的进程之间同步时间?,c,linux,time,clock-synchronization,C,Linux,Time,Clock Synchronization,我想在两台不同的linux机器中运行的两个进程之间发送一些帧。 我想知道每秒接收多少帧。因此,从machine1上的进程1开始,我在帧上打上时间戳,然后machine2上的进程2接收帧。它将检查时间戳并计算到达进程2所需的时间 但是这两台机器上的时间并不完全相同,可能有1秒不同,那么如何获得帧到达机器2上进程2所需的时间呢?您有很多选择,这取决于您希望在结果中获得何种精度。你可以 在两台机器上都使用NTP 测量平均RTT/2 检查已知的算法,看是否有 其中一种适合你的需要 你试过NTP吗?还可以

我想在两台不同的linux机器中运行的两个进程之间发送一些帧。 我想知道每秒接收多少帧。因此,从machine1上的进程1开始,我在帧上打上时间戳,然后machine2上的进程2接收帧。它将检查时间戳并计算到达进程2所需的时间


但是这两台机器上的时间并不完全相同,可能有1秒不同,那么如何获得帧到达机器2上进程2所需的时间呢?

您有很多选择,这取决于您希望在结果中获得何种精度。你可以

  • 在两台机器上都使用NTP
  • 测量平均RTT/2
  • 检查已知的算法,看是否有 其中一种适合你的需要
    你试过NTP吗?还可以看到,您可以同步机器之间的时间,或者测量消息传递的延迟,以及相对于其中一台机器的使用时间。我看不出有其他方法。你所说的测量消息传递的延迟是什么意思?共享内存可以帮助你设置一个进程,但在两台不同的机器上运行两个进程