This service is available only in Japanese-language.

カーネルのタイマー割り込み周期の確認・変更方法について

現在nanosleep()関数を使用して1ms待つ処理を入れて、
その前後にclock_gettime()で時刻を取得して本当に1ms待っているのか?
というPGを作成してリアルタイム性の調査をしています。

カーネルバージョンが異なるLinux(CPUも違いますが)での検証結果が以下の通りになりました。
CPU |カーネルVer |結果
Intel Atom E3940, 1.6 GHz, 4 cores |5.2.20-rt9-yocto-preempt-rt|1.016ms(1000回計測の平均値)
Intel® ATOMTM N455 1.66GHz 2 cores|3.8.13-rt2-yocto-preempt-rt|1.922ms(1000回計測の平均値)

CPUの処理速度の違いもあるかと思うのですが、Linuxのカーネルバージョンによっても違いがあるのかと考えており、
カーネルのタイマー割り込み周期の確認を行いたいのですが、
Yoctoのビルド環境のどこにその設定があるか分かりません。

Linuxに対してもまだまだ勉強不足なので、そもそもカーネルのタイマー割り込み周期は確認できるのか、
確認できれば周期を変更することは可能なのか、ご教授いただければ幸いです。

カーネルのコンフィグレーションは、bitbake linux-xxx(使用しているカーネルレシピ名) -c menuconfig で確認可能です。
変数HZにどの値が設定されているか(intel アーキテクチャの場合は1000)になっているかと。

カーネルのソースは、$TMP_DIR/$MACHINE/kernel-source/ 以下に展開されています。

返信が遅くなり申し訳ありません。
ご提示していただいた箇所を確認してみます。