.\"*******************************************************************
.TH TIME 7 2012\-10\-28 Linux "Linux Programmer's Manual"
.SH 名前
-time \- 時間とタイマの概要
+time \- æ\99\82é\96\93ã\81¨ã\82¿ã\82¤ã\83\9eã\83¼ã\81®æ¦\82è¦\81
.SH 説明
.SS "実時間 (real time) とプロセス時間"
\fI実時間\fPは、特定の時点から計った時間と定義される。 特定の時点とは、過去の標準的な時点 (下記の紀元 (Epoch) とカレンダ時刻の説明を参照)
\fBtimes\fP(2) システムコールは特殊なケースであり、 このシステムコールはカーネル定数 \fIUSER_HZ\fP
で定義された粒度で時間を報告する。 ユーザ空間のアプリケーションは \fIsysconf(_SC_CLK_TCK)\fP
を使ってこの定数の値を知ることができる。
-.SS 高精度タイマ
-Linux 2.6.21 より前では、タイマやスリープ関連のシステムコールの精度も jiffy のサイズにより制限されていた。
+.SS 高精度タイマー
+Linux 2.6.21 ã\82\88ã\82\8aå\89\8dã\81§ã\81¯ã\80\81ã\82¿ã\82¤ã\83\9eã\83¼ã\82\84ã\82¹ã\83ªã\83¼ã\83\97é\96¢é\80£ã\81®ã\82·ã\82¹ã\83\86ã\83 ã\82³ã\83¼ã\83«ã\81®ç²¾åº¦ã\82\82 jiffy ã\81®ã\82µã\82¤ã\82ºã\81«ã\82\88ã\82\8aå\88¶é\99\90ã\81\95ã\82\8cã\81¦ã\81\84ã\81\9fã\80\82
-Linux 2.6.21 以降では、Linux は高精度タイマ (high\-resolution timers; HRTs) をサポートしており、
-\fBCONFIG_HIGH_RES_TIMERS\fP ã\81§å\88¶å¾¡ã\81§ã\81\8dã\82\8bã\80\82 é«\98精度ã\82¿ã\82¤ã\83\9eã\82\92ã\82µã\83\9dã\83¼ã\83\88ã\81\97ã\81¦ã\81\84ã\82\8bã\82·ã\82¹ã\83\86ã\83 ã\81§ã\81¯ã\80\81ã\82¿ã\82¤ã\83\9eとスリープ関連のシステムコール
+Linux 2.6.21 以降では、Linux は高精度タイマー (high\-resolution timers; HRTs) をサポートしており、
+\fBCONFIG_HIGH_RES_TIMERS\fP ã\81§å\88¶å¾¡ã\81§ã\81\8dã\82\8bã\80\82 é«\98精度ã\82¿ã\82¤ã\83\9eã\83¼ã\82\92ã\82µã\83\9dã\83¼ã\83\88ã\81\97ã\81¦ã\81\84ã\82\8bã\82·ã\82¹ã\83\86ã\83 ã\81§ã\81¯ã\80\81ã\82¿ã\82¤ã\83\9eã\83¼とスリープ関連のシステムコール
の精度はもはや jiffy に制約されることはなく、 ハードウェアが許す限りの精度となる (最近のハードウェアではマイクロ秒単位の精度が一般的である)。
-é«\98精度ã\82¿ã\82¤ã\83\9eã\81\8cã\82µã\83\9dã\83¼ã\83\88ã\81\95ã\82\8cã\81¦ã\81\84ã\82\8bã\81\8bã\81¯ã\80\81 \fBclock_getres\fP(2) ã\82\92å\91¼ã\81³å\87ºã\81\97ã\81¦å\88\86解è\83½ã\82\92確èª\8dã\81\99ã\82\8bã\81\8bã\80\81 \fI/proc/timer_list\fP
-内の "resolution" エントリを参照するかで判断できる。
+é«\98精度ã\82¿ã\82¤ã\83\9eã\83¼ã\81\8cã\82µã\83\9dã\83¼ã\83\88ã\81\95ã\82\8cã\81¦ã\81\84ã\82\8bã\81\8bã\81¯ã\80\81 \fBclock_getres\fP(2) ã\82\92å\91¼ã\81³å\87ºã\81\97ã\81¦å\88\86解è\83½ã\82\92確èª\8dã\81\99ã\82\8bã\81\8bã\80\81
+\fI/proc/timer_list\fP 内の "resolution" エントリを参照するかで判断できる。
-高精度タイマはすべてのハードウェアアーキテクチャでサポートされている 訳ではない (対応しているアーキテクチャは x86, arm, powerpc
+é«\98精度ã\82¿ã\82¤ã\83\9eã\83¼ã\81¯ã\81\99ã\81¹ã\81¦ã\81®ã\83\8fã\83¼ã\83\89ã\82¦ã\82§ã\82¢ã\82¢ã\83¼ã\82ã\83\86ã\82¯ã\83\81ã\83£ã\81§ã\82µã\83\9dã\83¼ã\83\88ã\81\95ã\82\8cã\81¦ã\81\84ã\82\8b 訳ã\81§ã\81¯ã\81ªã\81\84 (対å¿\9cã\81\97ã\81¦ã\81\84ã\82\8bã\82¢ã\83¼ã\82ã\83\86ã\82¯ã\83\81ã\83£ã\81¯ x86, arm, powerpc
である)。
.SS 紀元
UNIX システムは時刻を 紀元 (1970\-01\-01 00:00:00 +0000 (UTC)) からの秒数で表現する。
(年・月・日・時・分・秒など) に分けて格納する。 この構造体は \fBctime\fP(3) に記述されており、カレンダ時刻を要素別の時刻に変換する
関数についても記述されている。 要素別の時刻を表示可能な文字列に変換する関数については、 \fBctime\fP(3), \fBstrftime\fP(3),
\fBstrptime\fP(3) に記述されている。
-.SS タイマのスリープと設定
+.SS ã\82¿ã\82¤ã\83\9eã\83¼ã\81®ã\82¹ã\83ªã\83¼ã\83\97ã\81¨è¨å®\9a
様々なシステムコールと関数により、指定された一定の時間、 プログラムはスリープ (実行を停止) することが可能である。 \fBnanosleep\fP(2),
\fBclock_nanosleep\fP(2), \fBsleep\fP(3) を参照すること。
様々なシステムコールにより、プロセスは将来のある時点で 有効期間が終了するタイマを設定できる。 またオプションとして繰り返し間隔が指定できるものもある。
\fBalarm\fP(2), \fBgetitimer\fP(2), \fBtimerfd_create\fP(2), \fBtimer_create\fP(2)
を参照すること。
-.SS "Timer slack"
-Since Linux 2.6.28, it is possible to control the "timer slack" value for a
-thread. The timer slack is the length of time by which the kernel may delay
-the wake\-up of certain system calls that block with a timeout. Permitting
-this delay allows the kernel to coalesce wake\-up events, thus possibly
-reducing the number of system wake\-ups and saving power. For more details,
-see the description of \fBPR_SET_TIMERSLACK\fP in \fBprctl\fP(2).
+.SS "timer slack"
+Linux 2.6.28 以降では、スレッドの "timer slack" 値を制御することができる。 "timer slack" は、
+停止中のシステムコールがタイムアウト以外で wake\-up される (起こされる) 際に、 カーネルに許容される遅延時間である。
+この遅延を認めることで、 カーネルは wake\-up イベントをまとめて行うことができ、 その結果、 システム全体の wake\-up 数を減らし、
+電力を節約することができる。 詳細は \fBprctl\fP(2) の \fBPR_SET_TIMERSLACK\fP の説明を参照のこと。
.SH 関連項目
.ad l
.nh
\fBpthread_getcpuclockid\fP(3), \fBsleep\fP(3), \fBstrftime\fP(3), \fBstrptime\fP(3),
\fBtimeradd\fP(3), \fBusleep\fP(3), \fBrtc\fP(4), \fBhwclock\fP(8)
.SH この文書について
-この man ページは Linux \fIman\-pages\fP プロジェクトのリリース 3.51 の一部
+この man ページは Linux \fIman\-pages\fP プロジェクトのリリース 3.52 の一部
である。プロジェクトの説明とバグ報告に関する情報は
http://www.kernel.org/doc/man\-pages/ に書かれている。