GETTIMEOFDAY

Section: System Calls (2)
索引 jman

BSD mandoc
 

索引

名称

gettimeofday settimeofday - 日付と時刻の取得 / 設定  

索引

ライブラリ

Lb libc  

索引

書式

In sys/time.h Ft int Fn gettimeofday struct timeval *tp struct timezone *tzp Ft int Fn settimeofday const struct timeval *tp const struct timezone *tzp  

索引

解説

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

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

Fa tp と Fa tzp の指す構造体は In sys/time.h 内に次のように定義されています:

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

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

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

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

索引

戻り値

Rv -std  

索引

エラー

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

Bq Er EFAULT
引数アドレスが無効なメモリを参照しました。
Bq Er EPERM
スーパユーザ以外のユーザが時刻を設定しようとしました。

 

索引

関連項目

date(1), adjtime(2), clock_gettime2, ctime(3), timeradd(3), clocks(7), timed(8)  

索引

歴史

Fn gettimeofday システムコールは BSD 4.2 ではじめて登場しました。


 

索引

Index

名称
ライブラリ
書式
解説
戻り値
エラー
関連項目
歴史

jman



Time: 07:06:26 GMT, January 12, 2009