Linux   发布时间:2022-04-01  发布网站:大佬教程  code.js-code.com
大佬教程收集整理的这篇文章主要介绍了更改linux内核计时器大佬教程大佬觉得挺不错的,现在分享给大家,也给大家做个参考。

概述

我必须运行延迟敏感的应用程序,并且我被要求将计时器分辨率更改为1000 Hz或更高.我在网上搜索了一下,发现了有关CONFIG_HZ等的网页. 但是,文件中似乎还有其他几个相关的设置,所以我想确保我不会弄乱设置.我在这里发布一些输出 $cat /boot/config-2.6.28-11-generic | grep HZ # CONFIG_HZ_1000 is not set # CONFIG_
我必须运行延迟敏感的应用程序,并且我被要求将计时器分辨率更改为1000 Hz或更高.我在网上搜索了一下,发现了有关CONfig_HZ等的网页.

但是,文件中似乎还有其他几个相关的设置,所以我想确保我不会弄乱设置.我在这里发布一些输出

$cat /boot/config-2.6.28-11-generic | grep HZ
# CONfig_HZ_1000 is not set
# CONfig_HZ_300 is not set
CONfig_MACHZ_WDT=m
CONfig_NO_HZ=y
CONfig_HZ=250
# CONfig_HZ_100 is not set
CONfig_HZ_250=y

那么第二行“#CONfig_HZ_1000未设置”是否意味着不支持1000Hz?我是否必须更改CONfig_HZ而不是CONfig_HZ-250?

PS:我在Geode处理器上使用2.6内核(ubuntu jaunty).

编辑1:我在桌面计算机和开发计算机上运行了一些来自http://www.advenage.com/topics/linux-timer-interrupt-frequency.php代码.据推测,该代码可以准确衡量系统可以维持的定时器的速度.输出大约为183 Hz(在开发机器上).那么改变计时器会有意义吗?

解决方法

不要直接编辑.config,除非你是Kbuild专家(如果你问这个,你不是Kbuild专家).而是运行make menuconfig或make xconfig以加载基于菜单的配置系统.或者,make config将执行基于行的配置过程(它会向您询问有关配置内容的几百个问题 – 不推荐).相关选项在“处理器类型和功能”下为“定时器频率”.

也就是说,这可能没有必要.现代Linux可以使用高分辨率事件定时器(CONfig_HIGH_RES_TIMERS)来实现低延迟定时器,即使不增加定时器频率也是如此.使用无定时系统(CONfig_NO_HZ),定时器频率几乎没有影响.

另一方面,我不确定Geode cpu有哪些定时器支持.您可能希望使用各种内核配置运行cyclictest,以查看获得低延迟性能所需的内容.您运行的测试测试的是最大调度频率,而不是调度延迟,因此与循环测试结果进行比较会很有趣.如果您需要非常低的延迟,CONFIG_PREEMPT_RT patchset也可能是有意义的.

大佬总结

以上是大佬教程为你收集整理的更改linux内核计时器全部内容,希望文章能够帮你解决更改linux内核计时器所遇到的程序开发问题。

如果觉得大佬教程网站内容还不错,欢迎将大佬教程推荐给程序员好友。

本图文内容来源于网友网络收集整理提供,作为学习参考使用,版权属于原作者。
如您有任何意见或建议可联系处理。小编QQ:384754419,请注明来意。
标签: