ntp_gettime()
によって返される時刻は、
timespec
構造体に格納されますが、マイクロ秒 (秒とマイクロ秒) または
ナノ秒 (秒とナノ秒) のどちらかの形式であることができます。
使用中の特有の形式は、
ntp_adjtime()
システムコールによって返される status ワードの
STA_NANO
ビットによって決定されます。
ntp_gettime()
は以下のメンバを持つ
ntptimeval
構造体へのポインタを引数として持ちます:
struct ntptimeval {
struct timespec time; /* 現在の時刻 (ns) (ro) */
long maxerror; /* 最大誤差 (us) (ro) */
long esterror; /* 推定誤差 (us) (ro) */
long tai; /* TAI-UTC オフセット */
int time_state; /* 時間状態 */
};
これらは以下のように理解されます:
| time
|
| |
現在の時刻です (読取り専用)。
|
| maxerror
|
| |
マイクロ秒単位での最大誤差です (読取り専用)。
|
| esterror
|
| |
マイクロ秒単位での推定誤差です (読取り専用)。
|
| tai
|
| |
TAI および UTC の時間スケールの間の秒単位のオフセットです。
このオフセットは 1 年毎に 2 回発行され、
TAI (閏秒がない) と UTC (閏秒がある) との間の整数秒差です。
ntpd(8)
またはその他のエージェントがこの値を管理します。
値 0 は不明を意味します。
このマニュアルページの日付では、このオフセットは 32 秒です。
|
| time_state
|
| |
現在時刻の状態です。
|