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

settimeofday

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

settimeofday




書式

     #include <sys/time.h>

     int
     gettimeofday(struct timeval *tp, struct timezone *tzp);

     int
     settimeofday(const struct timeval *tp, const struct timezone *tzp);


解説

     B>注B>記: timezone B>はB>もB>はB>やB>使B>用B>さB>れB>まB>せB>んB>。B>こB>のB>情B>報B>はB>カB>ーB>ネB>ルB>のB>外B>側B>にB>保B>持B>さB>れ
     B>まB>すB>。

     システムが保持している現在のグリニッジ時刻と現在の時間帯は gettimeofday()
     呼び出しから得られ、 settimeofday() 呼び出しで設定されます。時刻は 1970
     年 1 月 1 日の深夜 (0 時) からの秒数とマイクロ秒数で表現されます。システ
     ムクロックの分解能はハードウェアで決まり、時刻は継続的または ``チック''
     単位で更新されます。 tp または tzp が NULL の場合、対応する時刻情報は返さ
     れず、また設定されません。

     tptzp の指す構造体は <sys/time.h> 内に次のように定義されています。

     struct timeval {
             long    tv_sec;         /* 1970年1月1日からの秒数 */
             long    tv_usec;        /* およびマイクロ秒数 */
     };

     struct timezone {
             int     tz_minuteswest; /* グリニッジから西方向への偏差 */
             int     tz_dsttime;     /* 夏時間補正のタイプ */
     };

     timezone 構造体は、ローカル時間帯 (グリニッジから西向きに分単位で測定) と
     フラグを含みます。フラグが 0 でない場合は、一年の適切な時期に夏時間がその
     地域に適用されることを示します。

     スーパユーザだけが時刻または時間帯を設定できます。システムが安全モード
     (init(8) を参照) で実行される場合は、時刻は進めることしかできません。この
     制限が課されるのは、悪意のあるスーパユーザがファイルに任意のタイムスタン
     プを設定するのを防止するためです。システム時刻は、システムが安全モードに
     あっても adjtime(2) システムコールを使用して後方に調整できます。


戻り値

     成功して終了したときには値 0 を返します。そうでない場合、値 -1 が返され、
     グローバル変数 errno が設定されてエラーを示します。


エラー

     次のエラーコードが errno に設定されます。

     [EFAULT]           引数アドレスが無効なメモリを参照しました。


ABELNET VPSサービス