Training
×

System time (Time of Day) - Synchronization

All time related functions are driven by the system hardware timer (see definitions and more details later in this chapter of the training). Thus, the TOD is incremented at every system tick. The increment can be set to adjust the TODs gradually.
All configurations of INtime allow to synchronize the TOD. They just use different sources for the reference time and concepts to perform the synchronization including calculation of the adjustment for the increment of the TOD.
If there is a large difference between the local and reference time, it can take a while until they match.
 
In INtime for Windows the Windows based „INtime Clock Synchronization Service“ is used to keep the Windows and INtime TOD in sync. The update interval for adjusting the increment is configured in the System tab of the INtime configuration tool.
Adjustment values for the automatic sync of INtime for Windows have defaults but also can be configured. To configure the adjustment values, add a section [ADJTIME] with respective values to the Advanced configuration tab.
 
INtime Distributed RTOS systems initially synchronize with the system's RTC (battery clock) at startup, and – by default - do not perform any further synchronization. However, a process implementing a SNTP service can be configured in INtime Distributed RTOS for system time synchronization. The Web based configuration interface allows to load [Initial application loader] and configure [Advanced settings] SNTP on the host's first INtime node.
Amongst other parameters, the update interval for adjusting the increment also is configured in section [SNTP]. Up to 10 SNTP servers can be configured as source for the reference time and the INtime node itself can become an SNTP server for other clients.
Remember that SNTP will create some TCP/IP traffic and uses ports that need to be open in order to get SNTP working.
 
The interval to synchronize the TOD is ruled by the configuration of the respective service. SyncLocalRtClock() will synchronize immediately.
 
There also is the option to disable the automatic sync and programmatically use Get-/SetRtSystemTimeAdjustment.
Pls. note that the adustment values are signed and there is little sanity checking on them, thus you may produce unexpected results like the TOD moving backwards.