| Click this button to go to the index for this section. |
adjtime(2)
NAME
adjtime - Corrects the time to allow synchronization of the system clockSYNOPSIS
#include <sys/time.h> int adjtime ( struct timeval *delta, struct timeval *old_delta );PARAMETERS
delta Points to the amount of time to be altered. old_delta Points to the number of nanoseconds still to be corrected from an earlier call.DESCRIPTION
The adjtime() function makes small adjustments to the system time (as returned by the gettimer() function), advancing or decreasing it by the time specified by the delta parameter of the timeval structure. If delta is negative, the clock is slowed down by incrementing it more slowly than normal until the correction is complete. If delta is positive, a larger increment than normal is used until the correction is complete. The skew used to perform the correction is generally a fraction of one percent. Thus, the time is always a monotonically increasing function. A time correction from an earlier call to adjtime() may not be finished when adjtime() is called again. In this case, the delta remaining from the original call is replaced by the delta of the current call. If the old_delta parameter is nonzero, then when the adjtime() function returns, the structure pointed to will contain the time remaining from the earlier call. This call may be used by time servers that synchronize the clocks of computers in a local area network. Such time servers would slow down the clocks of some machines and speed up the clocks of others to bring them to the average network time. The adjtime() function is restricted to users with superuser privilege.NOTES
In BSD, system time is defined in units of seconds and microseconds, while in POSIX real time extensions, the units are seconds and nanoseconds. However, the adjtime() function is not specified by POSIX. Therefore, the existing BSD interface is preserved.RETURN VALUES
Upon successful completion, the adjtime() function returns a 0 (zero). If the adjtime() function fails, a value of -1 is returned, and errno is set to indicate the error.ERRORS
If the adjtime() function fails, errno may be set to one of the following values: [EFAULT] An argument address referenced invalid memory. [EPERM] The process's effective user ID does not have appropriate system privilege.RELATED INFORMATION
Functions: gettimeofday(2), gettimer(3)