現在、このdo_gettimeofday()
関数を使用してカーネル内の時間を測定しています。これにより、マイクロ秒の精度が得られます。これよりも正確な(おそらくナノ秒のオーダーで)利用可能なものはありますか?
質問する
10711 次
2 に答える
15
このktime_get()
関数はktime_t
、ナノ秒の分解能を持つ を返します。
于 2013-04-14T11:45:12.040 に答える
5
私が知っているように、最も正確なタイマーはプロセッサ固有のカウンターレジスタ ( x86のTSCなど) である必要があります。Linux カーネルは、このレジスタ値を読み取るために、「./arch/x86/include/asm/msr.h」ファイルから rdtsc、rdtscl、rdtscll マクロを提供します。ARM の場合、サイクル カウンタ レジスタ.
これらのレジスタはすべて CPU ごとに異なります。これにアクセスする共通のインターフェイスは、<linux/timex.h> ファイルで宣言されている "get_cycles" 関数です。
多分、このドキュメントは役に立つかもしれません。
于 2013-04-14T09:41:38.523 に答える