adjtime(2) FreeBSD 一般コマンドマニュアル

adjtime

前のページ 上に戻る 次のページ

adjtime




書式

     #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 for UNIX
     4.3BSD.


歴史

     adjtime() 関数は 4.3BSD で登場しました。

FreeBSD 4.4                      June 4, 1993                      FreeBSD 4.4

ABELNET VPSサービス