| 総合手引 | セクション 2 | English | オプション |
#include <sys/time.h>
システムが保持している現在のグリニッジ時刻と現在の時間帯は gettimeofday() システムコールから得られ、 settimeofday() システムコールで設定されます。 時刻は 1970 年 1 月 1 日の深夜 (0 時) からの秒数とマイクロ秒数で表現されます。 システムクロックの分解能はハードウェアで決まり、 時刻は継続的または "チック" 単位で更新されます。 tp または tzp が NULL の場合、対応する時刻情報は返されず、また設定されません。
tp と tzp の指す構造体は <sys/time.h> 内に次のように定義されています:
struct timeval {
long tv_sec; /* 1970 年 1 月 1 日からの秒数 */
long tv_usec; /* およびマイクロ秒数 */
};
struct timezone {
int tz_minuteswest; /* グリニッジから西方向への偏差 */
int tz_dsttime; /* 夏時間補正のタイプ */
};
timezone 構造体は、ローカル時間帯 (グリニッジから西向きに分単位で測定) と フラグを含みます。 フラグが 0 でない場合は、1 年の適切な時期に 夏時間がその地域に適用されることを示します。
スーパユーザだけが時刻または時間帯を設定できます。 システムが securelevel >= 2 (init(8) を参照) で実行される場合は、 最大 1 秒のみ時刻を進めるか遅らせることしかできません。 この制限が課されるのは、悪意のあるスーパユーザがファイルに任意の タイムスタンプを設定するのを防止するためです。 システム時刻は、システムが安全モードにあっても adjtime(2) システムコールを使用して制限なしに後方に調整できます。
| [EFAULT] | |
| 引数アドレスが無効なメモリを参照しました。 | |
| [EPERM] | |
| スーパユーザ以外のユーザが時刻を設定しようとしました。 | |
| GETTIMEOFDAY (2) | May 26, 1995 |
| 総合手引 | セクション 2 | English | オプション |
このマニュアルページサービスについてのご意見は Ben Bullock にお知らせください。 Privacy policy.
| “ | The most horrifying thing about Unix is that, no matter how many times you hit yourself over the head with it, you never quite manage to lose consciousness. It just goes on and on. | ” |
| — Patrick Sobalvarro | ||