NTP_GETTIME - Linux手册页

时间:2019-08-20 18:00:57  来源:igfitidea点击:

Linux程序员手册 第3部分
更新日期: 2020-06-09

名称

ntp_gettime,ntp_gettimex-获取时间参数(NTP守护程序接口)

语法

#include <sys/timex.h>

int ntp_gettime(struct ntptimeval *ntv);

int ntp_gettimex(struct ntptimeval *ntv);

说明

这两个API均通过ntv参数(以下类型的结构)将信息返回给调用方:

struct ntptimeval {
    struct timeval time;        /* Current time */
    long int maxerror;          /* Maximum error */
    long int esterror;          /* Estimated error */
    long int tai;               /* TAI offset */

    /* Further padding bytes allowing for future expansion */
};

此结构的字段如下:

time
当前时间,表示为时间结构:
struct timeval {
    time_t      tv_sec;   /* Seconds since the Epoch */
    suseconds_t tv_usec;  /* Microseconds */
};
maxerror
最大错误,以微秒为单位。该值可以由ntp_adjtime(3)初始化,并定期增加(在Linux上:每秒),但会限制在上限(内核常数NTP_PHASE_MAX,值为16,000)。
esterror
估计的误差,以微秒为单位。可以通过ntp_adjtime(3)设置此值,以包含对系统时钟和真实时间之间的差异的估计。此值不在内核内部使用。
tai
TAI(国际原子时间)偏移量。

ntp_gettime()返回一个ntptimeval结构,其中填充了time,maxerror和esterror字段。

ntp_gettimex()执行与ntp_gettime()相同的任务,但还返回tai字段中的信息。

返回值

ntp_gettime()和ntp_gettimex()的返回值与adjtimex(2)相同。给定正确的指针参数,这些函数将始终成功。

版本

从glibc 2.1开始,可以使用ntp_gettime()函数。从glibc 2.12开始,ntp_gettimex()函数可用。

属性

有关本节中使用的术语的说明,请参见attribute(7)。

InterfaceAttributeValue
ntp_gettime(),ntp_gettimex()Thread safetyMT-Safe

遵循规范

NTP内核应用程序接口中介绍了ntp_gettime()。 ntp_gettimex()是GNU扩展。

另外参见

adjtimex(2),ntp_adjtime(3),time(7)

NTP"内核应用程序接口"

出版信息

这个页面是Linux手册页项目5.08版的一部分。有关项目的说明、有关报告错误的信息以及此页面的最新版本,请访问https://www.kernel.org/doc/man-pages/