スポンサーリンク

ADJTIME(2) FreeBSD システムコールマニュアル ADJTIME(2)

名称

adjtime − システムクロックとの同期化ができるように時刻を訂正する

ライブラリ

標準 C ライブラリ (libc, −lc)

書式

#include <sys/time.h>

int

adjtime(const struct timeval *delta, struct timeval *olddelta);

解説

adjtime() システムコールは、 gettimeofday(2) が返すようなシステム時刻を微 調整します。時間値 delta で指定された時間だけシステム時刻を進ませる、また は遅らせます。 delta が負の場合、訂正が完了するまでクロックをよりゆっくり と増加させることによってクロックを低速化します。 delta が正の場合は通常よ り大きな増分を使用します。訂正を実行するために使用されるずれは、一般には 1 パーセントの割合です。これにより、時刻は常に単調増加関数となります。以 前の adjtime() 呼び出しによる時刻訂正が、再び adjtime() が呼び出された時 に完了していない可能性があります。 olddelta が nil でない場合、指し示され ている構造体は、以前の呼び出しからの、依然として訂正する必要のあるマイク ロ秒単位の数が戻り時に格納されているでしょう。

この呼び出しは、ローカルエリアネットワーク内のコンピュータのクロックを同 期するタイムサーバが使用することがあります。このようなタイムサーバはマシ ンのクロックを低速化、または高速化して、それらを平均ネットワーク時刻にし ます。

adjtime() システムコールはスーパユーザに限定されています。

戻り値

関数 adjtime() は、処理が成功すると値 0 を返します。そうでない場合、値 -1 が返され、グローバル変数 errno が設定されてエラーを示します。

エラー

adjtime() システムコールは次の場合に処理を失敗します:

       [EFAULT]

引数は、プロセスに割り当てられたアドレス空間の範囲外を 指しています。

[EPERM]
プロセスの実効ユーザ ID がスーパユーザのものではありま せん。

関連項目

date(1), gettimeofday(2), timed(8), timedc(8)

       R. Gusella and                        S. Zatti,                                    TSP: The Time Synchronization Protocol forUNIX 4.3BSD.

歴史

adjtime() システムコールは 4.3BSD で登場しました。

FreeBSD 10.0 June 4, 1993 FreeBSD 10.0

スポンサーリンク