EN JA
TIMES(3)
TIMES(3) FreeBSD Library Functions Manual TIMES(3)

名称

timesプロセス時間

ライブラリ

Standard C Library (libc, -lc)

書式

#include < sys/times.h>

clock_t
times( struct tms *tp);

解説

このインタフェースは、旧式となり getrusage(2)gettimeofday(2) に置き換えられました。

times() 関数は、システム起動時から CLK_TCK 秒単位の時間で値を返します。 1 秒ごとの刻みの統計クロックの周波数である、 CLK_TCK の現在の値は、 sysconf(3) インタフェースを通して取得されます。

それは、また、 tp により指される構造体に時間計測情報を書き入れます。

tms 構造体は、次のように定義されます。

struct tms { 
        clock_t tms_utime; 
        clock_t tms_stime; 
        clock_t tms_cutime; 
        clock_t tms_cstime; 
};

この構造体の要素は、次のように定義されます。

tms_utime
CPU 時間は、ユーザ命令の実行のために課金されます。
tms_stime
CPU 時間は、プロセスを代表してシステムによる実行のために課金されます。
tms_cutime
子プロセスの tms_utimetms_cutime の合計。
tms_cstime
子プロセスの tms_stimetms_cstime の合計。

すべての時間は、 CLK_TCK 秒で表されます。

終了した子プロセスの時間は、 wait(2) 関数の 1 つが終了した子プロセス ID を親に返したときに、親の tms_cutimetms_cstime の要素に含まれます。エラーが起きた場合は、 times() 関数は、値 (( clock_t)-1) を返し、エラーを示すように errno を設定します。

エラー

times() 関数が失敗すると、ライブラリルーチン getrusage(2)gettimeofday(2) で明記されたエラーのいずれかが errno に設定されます。

規格

times() 関数は、 IEEE Std 1003.1-1988 (“POSIX.1”) に適合しています。
December 1, 2008 FreeBSD