[Armadillo:06961] Re: Unknown HZ value!
Takenoshita Koyo
email@hidden
2011年 4月 5日 (火) 18:45:21 JST
竹之下です。
> が、これがどこから呼ばれているのかが良くわかりません・・・
static void init_Linux_version(void) __attribute__((constructor));
となっているので、main()が実行される前に実行されているはずです。
参考: main() の前に関数を呼ぶ - bkブログ
http://0xcc.net/blog/archives/000091.html
Masahiro Iino さんは書きました:
> 飯野です
>
> 情報ありがとうございます。
> どうにもならなかったら、Debianのpsを使ってみます。
>
> 竹之下さんの問いである、
> "2.4+ kernel w/o ELF notes? -- report this\n"
> というメッセージも一緒に表示されていませんでしょうか?
> は、表示されません。
> そこから考えると、
>
> if(linux_version_code > LINUX_VERSION(2, 4, 0)){
> Hertz = find_elf_note(AT_CLKTCK);
> if(Hertz!=NOTE_NOT_FOUND) return;
> fputs("2.4+ kernel w/o ELF notes? -- report this\n", stderr);
> }
> old_Hertz_hack();
>
> ここで、linux_version_codeが2.4より大きくないと言う事になります。
> で、linux_version_codeは、同じディレクトリのversion.hで定義されており、
> version.cに
> static void init_Linux_version(void) {
> static struct utsname uts;
> int x = 0, y = 0, z = 0; /* cleared in case sscanf() < 3 */
>
> if (uname(&uts) == -1) /* failure implies impending death */
> exit(1);
> if (sscanf(uts.release, "%d.%d.%d", &x, &y, &z) < 3)
> fprintf(stderr, /* *very* unlikely to happen by accident */
> "Non-standard uts for running kernel:\n"
> "release %s=%d.%d.%d gives version code %d\n",
> uts.release, x, y, z, LINUX_VERSION(x,y,z));
> linux_version_code = LINUX_VERSION(x, y, z);
> }
> となっていて、uname構造体から取り出しているようです。
> が、これがどこから呼ばれているのかが良くわかりません・・・
>
> (2011/04/05 18:02), TATENO Hiroyuki wrote:
>> 舘野です。
>>
>>> そもそも、なぜ、"old_Hertz_hack"が実行されているのでしょう。
>>> "2.4+ kernel w/o ELF notes? -- report this\n"
>>> というメッセージも一緒に表示されていませんでしょうか?
>>>
>>> *1: そもそも、この計算方法では正確な値が得られないような気がするのですが。。
>> 以前、私もbusyboxのpsでは欲しい情報が出なかったため、ATDのpsを
>> 試用した事があるのですが、同様の状態で気持ち悪かったので
>> 最終的にはDebianのpsを入れて使用しています。
>>
>> libprocを一緒にいれてあげれば動きますので、こちらをおすすめします。
>>
>> ---
>> TETENO Hiroyuki
>>
>> _______________________________________________
>> armadillo mailing list
>> email@hidden
>> http://lists.atmark-techno.com/cgi-bin/mailman/listinfo/armadillo
>>
>
>
> ------------------------------------------------------------------------
>
> _______________________________________________
> armadillo mailing list
> email@hidden
> http://lists.atmark-techno.com/cgi-bin/mailman/listinfo/armadillo
--
Koyo Takenoshita
armadillo メーリングリストの案内