Люди.У меня такая проблема.Работаю со встроенной Linux системой,основанной на ARM. И мне нужно иногда менять(програмно) частоту процессора. В сети нашёл кучу инфы на эту тему и она вся сводится к тому,что надо работать с интерфейсом: /sys/devices/system/cpu/cpu#/cpufreq. Там есть файл scaling_setspeed и с помощью(например): echo 1000 > /sys/devices/system/cpu/cpu0/cpufreq/scaling_setspeed можно менять частоту процессора на 1GHz.
Так же можно скомпилить пакет cpufregutils,включающий в себя cpufreq-info,cpufreq-set и ещё 1 или 2 утилиты(зависит от версии),которые мне не нужны и я их убрал. Фактически этот пакет работает с тем же интерфейсом.
Теперь,что у меня происходит на деле.
1.
После
echo 1000 > /sys/devices/system/cpu/cpu0/cpufreq/scaling_setspeed
либо
cpufreq-set -f 1000MHz
нет никакого сообщения об ошибке, т.е. операция закончилась успешно.
2.
Время модификации файла scaling_setspeed изменилось,т.е. произведено изменение файла.
3.
cat /sys/devices/system/cpu/cpu0/cpufreq/scaling_setspeed
выдаёт 800000,т.е. 800МHz,как и было.
4.
cat /sys/devices/system/cpu/cpu0/cpufreq/cpuinfo_cur_freq
выдаёт 800000,т.е. 800МHz,как и было.
5.
cat /proc/cpuinfo
выдаёт
Processor : ARMv7 Processor rev 2 (v7l)
BogoMIPS : 799.29
Features : swp half thumb fastmult vfp edsp neon vfpv3
CPU implementer : 0x41
CPU architecture: 7
CPU variant : 0x3
CPU part : 0xc08
CPU revision : 2
Hardware : IdentyTech IDT-SOM-OM3730
Revision : 0020
Serial : 0000000000000000
т.е. BogoMIPS : 799.29 не изменилось.
6.
cpufreq-info
выдаёт,что частота не изменилась.
Кто-нить сталкивался с этой темой,может кто-то подсказать,почему измение не происходит фактичски,плз?
Заранее спасибо.