[Date Prev][Date Next][Thread Prev][Thread Next][Date Index][Thread Index]
[plamo:29972] CONFIG_HZ とjiffie
-
From:早間義博
-
Date:Sat, 25 Jul 2009 23:41:38 +0900 (JST)
- Subject: [plamo:29972] CONFIG_HZ とjiffie
- From: 早間義博<yossi@xxxxxxxxxxxxxx>
- Date: Sat, 25 Jul 2009 23:41:36 +0900 (JST)
早間です。
plamo 4.6 で CONFIG_HZ の値で時刻を計算すると合いません。
CONFIG_SMP=y の所為でしょうか。
検算のメモをつけておきます。
/proc/config.gz では
CONFIG_HZ_300=y
と指定されています。
同様に /usr/src/linux/.config の .config には
CONFIG_HZ_300=y
が指定されています。
perl で
$ perl -e '
use POSIX qw(sysconf _SC_CLK_TCK);
$HERZ=sysconf(_SC_CLK_TCK);
print "$HERZ\n";
'
100
と CONFIG_HZ を取得すると
$HERZ=100 が得られます。
man sysconf で見ると
clock ticks - _SC_CLK_TCK
The number of clock ticks per second. The
corresponding variable is obsolete. It was of
course called CLK_TCK. (Note: the macro
CLOCKS_PER_SEC does not give information: it must
equal 1000000.)
とあります。
コマンドの実行開始時刻を計算すると kernel の CONFIG_HZ を 100 で計
算しないと合いません。
コマンド snmpd の計算例です。
(1) コマンド ps でコマンド実行開始時刻を得ます。
$ ps u -C snmpd
USER PID %CPU %MEM VSZ RSS TTY STAT START TIME COMMAND
root 26395 0.5 1.6 7780 4172 ? S 17:57 1:31 /usr/sbin/snmpd
17:57 が開始時刻です。
(2)このコマンドの実行開始 jiffie を取得すると
$ cat /proc/26395/stat| cut -f 22 -d" "
7653258
です。
(3) ホストの起動時刻は
$ cat /proc/stat
cpu 16523 0 45423 9257145 106765 565 1249 0 0
cpu0 16523 0 45423 9257145 106765 565 1249 0 0
intr 1593210 98 502 0 1 1 0 5 0 158 0 0 0 1784 0 0 82804 0 435257 22417 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0
ctxt 2472725
btime 1248435730
processes 38591
procs_running 1
procs_blocked 0
と
btime 1248435730 が得られます。
(4) CONFIG_HZ=300 で開始時刻を計算すると
$ perl -e 'use POSIX qw(strftime);
$whenstart=1248435730 + 7653258/ 300;
$startfrom=strftime("%y/%m/%d %H:%M",localtime($whenstart));
print "$startfrom\n"'
09/07/25 03:47
(5)CONFIG_HZ=100 で開始時刻を計算すると
$ perl -e 'use POSIX qw(strftime);
$whenstart=1248435730 + 7653258 / 100;
$startfrom=strftime("%y/%m/%d %H:%M", localtime($whenstart));
print "$startfrom\n"'
09/07/25 17:57
-- 早間
- Follow-Ups
-
- [plamo:29982] Re: CONFIG_HZ とjiffie, KATOH Yasufumi
- [plamo:30003] Re: CONFIG_HZ とjiffie, KATOH Yasufumi
[検索ページ]
[メール一覧]
Plamo ML 公開システム