robert_cz Opublikowano 7 Sierpnia 2016 Udostępnij Opublikowano 7 Sierpnia 2016 Tak sobie testuję już kilka tygodni i wygląda na to, że najwięcej mocy procesora jest potrzebne gdy tuner wyświetla coś na telewizorze czyli prowadzi dekompresję strumienia. Przy nagrywaniu i przy strumieniowaniu na inny tuner wszystko świetnie działa ze zmniejszoną o połowę prędkością procesora. Pożyczyłem sobie skrypty J00zka od obniżania prekości z modreate i wrzuciłem je po drobnych zmianach do folderów /etc/cron/standby_off i /etc/cron/standby_on. poza zmianą prędkości, zmieniłem w skryptach nazwę pliku /tmp/CurrentSpeed na /tmp/CurrentSpeed_standby, bo były w konflikcie z moderate i tuner wstawał ze zmniejszoną prędkością z moderate. Jeszcze coś zmieniałem, ale po kilku tygodniach nie pamiętam :-( A po co to wszystko, potrzebowałem, żeby przy uśpionym tunerze działała mi w drugim odbiorniku opcja "zapasowy drugi odbiornik" i żebym przy uśpieniu mógł sobie strumieniować na inny tuner. /etc/cron/standby_off/10cpu_frequ: #!/bin/sh # Graterlia OS # homepage: http://graterlia.xunil.pl # e-mail: nbox@xunil.pl # # skrypt przywracająy częstotliwość pracy procesora # @j00zek # wersja 2014-12-15 . /etc/sysconfig/gfunctions #wczytanie funkcji wspólnych dla skryptów Graterlia GOSdebug ">>>>>>>>>> $0" ##### MAIN ##### echo "Init">/dev/vfd if [ -f /tmp/CurrentSpeed_standby ]; then CurrentSpeed=`cat /tmp/CurrentSpeed_standby` GOSdebug "Sending '$CurrentSpeed'>/proc/cpu_frequ/pll0_ndiv_mdiv" echo "$CurrentSpeed">/proc/cpu_frequ/pll0_ndiv_mdiv rm -f /tmp/CurrentSpeed_standby [ -f /etc/cron/minutely/ntpdate ] && rm -f /etc/cron/minutely/ntpdate fi GOSdebug "<<<<<<<<<< $0" /etc/cron/standby_on/70cpu_frequ #!/bin/sh # Graterlia OS # homepage: http://graterlia.xunil.pl # e-mail: nbox@xunil.pl # # skrypt zmieniający częstotliwość pracy procesora # @j00zek # wersja 2014-12-12 . /etc/sysconfig/gfunctions #wczytanie funkcji wspólnych dla skryptów Graterlia . /var/grun/grcstype GOSdebug ">>>>>>>>>> $0" #if [ "$rcstype" == "ArivaLink200" ]; then # GOSdebug "Tuner $rcstype does not support cpu_frequ well, exiting" # exit 0 #elif [ $rcstype == "ADB5800" ]; then # CurrentTime=`date +%s` # WakeupTime=0 # # if grep -q '<timer begin' </etc/enigma2/timers.xml;then # for e2time in `grep '<timer begin' </etc/enigma2/timers.xml | sed 's/^.*begin="\([1234567890]*\)" end.*$/\1/' | sort -n` # do # if [ $e2time -gt $CurrentTime ]; then # GOSdebug "Tuner $rcstype has recordings scheduled exiting" # exit 0 # fi # done # fi #fi ##### INICJALIZACJA ##### if [ ! -f /lib/modules/cpu_frequ.ko ]; then opkg update; opkg install kernel-modules-cpufreq-gos #potrzebujemy do obnizenia predkosci CPU fi if [ ! -f /proc/cpu_frequ/pll0_ndiv_mdiv ]; then insmod /lib/modules/cpu_frequ.ko fi [ -f /tmp/CurrentSpeed_standby ] && rm -f /tmp/CurrentSpeed_standby if [ ! -f /proc/cpu_frequ/pll0_ndiv_mdiv ]; then GOSdebug "cpu_frequ no loaded, exiting!" exit 0 fi CurrentSpeed=$((0x`cat /proc/cpu_frequ/pll0_ndiv_mdiv | grep CKGA_PLL0_CFG | awk '{print $3}' | tail -c 5`)) ##### MAIN ##### if [ ! -z $CurrentSpeed ]; then myFREQ=0 case $platform in 7100|7109) myFREQ=3843; ;; esac GOSdebug "stm$platform $CurrentSpeed > $myFREQ" if [ $myFREQ -gt 0 ];then echo "$myFREQ">/proc/cpu_frequ/pll0_ndiv_mdiv echo "$CurrentSpeed">/tmp/CurrentSpeed_standby fi else GOSdebug "CurrentSpeed='$CurrentSpeed' ?!?!?" fi -if [ $rcstype == "ADB5800" ]; then [ -f /etc/cron/minutely/ntpdate ] || cp -f /etc/cron/daily/ntpdate /etc/cron/minutely/ntpdate -fi GOSdebug "<<<<<<<<<< $0" Cytuj Odnośnik do komentarza Udostępnij na innych stronach Więcej opcji udostępniania...
Rekomendowane odpowiedzi
Dołącz do dyskusji
Możesz dodać zawartość już teraz a zarejestrować się później. Jeśli posiadasz już konto, zaloguj się aby dodać zawartość za jego pomocą.