我对改变内核频率有疑问。
我使用:
编译内核 make menuconfig(do some changes in config)
(under Processor type and features->Timer frequency to change frequency)
1.fakeroot make-kpkg --initrd --append-to-version=-mm kernel-image kernel-headers
2.export CONCURRENCY_LEVEL=3
3.sudo dpkg -i linux-image-3.2.14-mm_3.2.14-mm-10.00.Custom_amd64.deb
4.sudo dpkg -i linux-headers-3.2.14-mm_3.2.14-mm-10.00.Custom_amd64.deb
然后说如果我想改变内核的频率,
我做的是:
I replaced .config file with my own config file
(since I want to do this automatically without opening make menuconfig ui)
然后我再次重复步骤1,2,3,4
无论如何我不需要重复上述4个步骤吗?
非常感谢!!!!
答案 0 :(得分:1)
计时器频率在Linux中是固定的(除非你构建一个无空符内核 - CONFIG_NO_HZ = y - 但上限仍然是固定的)。您无法在运行时或启动时更改它。您只能在编译时更改它。
所以答案是:不。如果要更改内核,则需要重建内核。
答案 1 :(得分:0)
内核计时器频率(CONFIG_HZ
)在运行时不可配置 - 当您更改设置时将必须编译新内核并且< em>将必须使用新内核重启系统,以查看任何更改的影响。
但是,如果你这么做很多,你应该能够创建一个小的shell脚本来自动化内核配置/构建/安装过程。例如,自动化程序不应该太难,例如
./kernel-prep-with-hz 100
将重建并安装新内核,只需要您发出最终重启命令。
请记住,定时器频率可能会以不可预测的方式对各个子系统产生微妙的影响,尽管自从引入无定时器代码以来事情变得更好了。
为什么要这样做呢?
答案 2 :(得分:-1)
也许这会有所帮助。如文章所述,您可以更改系统支持的可用频率之间的频率。 (Check if CPUfreq is already enabled in your system)
示例,我的。
#cat /sys/devices/system/cpu/cpu0/cpufreq/scaling_available_frequencies
2000000 1667000 1333000 1000000
#echo 1000000 > cpu0/cpufreq/scaling_min_freq
http://www.ibm.com/developerworks/linux/library/l-cpufreq-2/