Ver Mensaje Individual
  #151  
Viejo 30/10/16, 03:49:46
Array

[xs_avatar]
ncandroid84 ncandroid84 no está en línea
Miembro del foro
 
Fecha de registro: nov 2012
Localización: Argentina - Bs.As
Mensajes: 143
Modelo de smartphone: Moto XT1097
Tu operador: Personal
Hola, al miki-engine le agregue un par de líneas, algunas tienen valores por defecto, la idea es poder cambiarlos desde ahy sin usar aplicaciones que manejen el kernel como por ejemplo kernel adiutor, por eso a las líneas les puse cuales valores se podrian poner, cada uno elije!

#!/system/bin/sh

# kernel debug
#
echo "NO_AFFINE_WAKEUPS" >> /sys/kernel/debug/sched_features
echo "NO_GENTLE_FAIR_SLEEPERS" > /sys/kernel/debug/sched_features
echo "NO_NEW_FAIR_SLEEPERS" > /sys/kernel/debug/sched_features
echo "NO_NORMALIZED_SLEEPER" > /sys/kernel/debug/sched_features

# VM tweaks
#
echo 500 > /proc/sys/vm/dirty_expire_centisecs
echo 1000 > /proc/sys/vm/dirty_writeback_centisecs
echo 40 > /proc/sys/vm/dirty_ratio
echo 5 > /proc/sys/vm/dirty_background_ratio
echo 0 > /proc/sys/vm/swappiness
echo 40 > /proc/sys/vm/vfs_cache_pressure
echo 3 > /proc/sys/vm/drop_caches

# No FSYNC
#
echo N > /sys/module/sync/parameters/fsync_enabled

# Swicht SElinux to permissive
#
echo 0 > /sys/fs/selinux/enforce

# Delete and disable system logs on dropbox
#
rm /data/system/dropbox/*
rm /data/system/usagestats/daily/*
rm /data/system/usagestats/0/monthly/*
rm /data/system/usagestats/0/weekly/*
rm /data/system/usagestats/0/yearly*
chmod 400 /data/system/dropbox
chmod 400 /data/system/usagestats/0/daily
chmod 400 /data/system/usagestats/0/monthly
chmod 400 /data/system/usagestats/0/weekly
chmod 400 /data/system/usagestats/0/yearly

# light led when battery charging is full
#
echo 80 > /sys/class/leds/charging/max_brightness
echo battery-full > /sys/class/leds/charging/trigger

# kcal.0 control
#
echo 232 228 255 > /sys/devices/platform/kcal_ctrl.0/kcal
echo 228 > /sys/devices/platform/kcal_ctrl.0/kcal_min

# Touch
#
echo 7025 > /sys/class/touch/switch/set_touchscreen
echo 8002 > /sys/class/touch/switch/set_touchscreen
echo 11001 > /sys/class/touch/switch/set_touchscreen
echo 13030 > /sys/class/touch/switch/set_touchscreen
echo 14005 > /sys/class/touch/switch/set_touchscreen

# Ganancia de microfono (-20,20)
#
echo 4 > /sys/devices/virtual/misc/soundcontrol/mic_boost

# Volume de volumen (-20,20)
#
echo 8 > /sys/class/misc/soundcontrol/volume_boost

#==========Entropía==========

# lectura(64,128,256,512,1024,2048,4096)
#
echo 4096 > /proc/sys/kernel/random/read_wakeup_threshold

# escritura(64,128,256,512,1024,2048,4096)
#
echo 4096 > /proc/sys/kernel/random/write_wakeup_threshold

#============================

# Control de vibración (0-100)
#
echo 44 > /sys/vibrator/pwmvalue

# Algoritmo de congestión TCP (cubic-westwood)
#
sysctl -w net.ipv4.tcp_congestion_control=westwood

# Planificador (cfq-fiops-row)
#
echo fiops > /sys/block/mmcblk0/queue/scheduler

# RQ affinity (set 0-1-2)
#
echo 2 > /sys/block/mmcblk0/queue/rq_affinity

# Swap
#
echo 100 > /proc/sys/vm/swappiness
echo 151 > /proc/sys/vm/vfs_cache_pressure
swapoff /dev/block/zram0 > /dev/null 2>&1
echo 1 > /sys/block/zram0/reset
echo 104857600 > /sys/block/zram0/disksize
mkswap /dev/block/zram0 > /dev/null 2>&1
swapon /dev/block/zram0 > /dev/null 2>&1

# Ahorro de energía multinucleo
# (0,apagado-1,activo-2,agresivo)
#
echo 2 > /sys/devices/system/cpu/sched_mc_power_savings

#======Low memory killer======
#la opción seleccionada va sin almohadilla #delante de la línea de comandos

# Muy ligero
#
#echo 512,1024,1280,2048,3072,4096 > /sys/module/lowmemorykiller/parameters/minfree

# Medio
#
#echo 1024,2048,4096,8192,12288,16384 > /sys/module/lowmemorykiller/parameters/minfree

# Muy agresivo
#
echo 4096,8192,16384,32768,49152,65536 > /sys/module/lowmemorykiller/parameters/minfree

#=============================

# Prelectura de memoria de telefono
# valores 128kb-4096kb (los saltos son de 128)
#
echo 1024 > /sys/block/mmcblk0/queue/read_ahead_kb

# Frecuencia max. CPU
#
chmod 644 /sys/devices/system/cpu/cpu0/cpufreq/scaling_max_freq
echo 2457600 > /sys/devices/system/cpu/cpu0/cpufreq/scaling_max_freq
chmod 444 /sys/devices/system/cpu/cpu0/cpufreq/scaling_max_freq

echo 1 > /sys/devices/system/cpu/cpu1/online
chmod 644 /sys/devices/system/cpu/cpu1/cpufreq/scaling_max_freq
echo 2457600 > /sys/devices/system/cpu/cpu1/cpufreq/scaling_max_freq
chmod 444 /sys/devices/system/cpu/cpu1/cpufreq/scaling_max_freq

echo 1 > /sys/devices/system/cpu/cpu2/online
chmod 644 /sys/devices/system/cpu/cpu2/cpufreq/scaling_max_freq
echo 2457600 > /sys/devices/system/cpu/cpu2/cpufreq/scaling_max_freq
chmod 444 /sys/devices/system/cpu/cpu2/cpufreq/scaling_max_freq

echo 1 > /sys/devices/system/cpu/cpu3/online
chmod 644 /sys/devices/system/cpu/cpu3/cpufreq/scaling_max_freq
echo 2457600 > /sys/devices/system/cpu/cpu3/cpufreq/scaling_max_freq
chmod 444 /sys/devices/system/cpu/cpu3/cpufreq/scaling_max_freq

# Frecuencia min. CPU
#
chmod 644 /sys/devices/system/cpu/cpu0/cpufreq/scaling_min_freq
echo 268800 > /sys/devices/system/cpu/cpu0/cpufreq/scaling_min_freq
chmod 444 /sys/devices/system/cpu/cpu0/cpufreq/scaling_min_freq

echo 1 > /sys/devices/system/cpu/cpu1/online
chmod 644 /sys/devices/system/cpu/cpu1/cpufreq/scaling_min_freq
echo 268800 > /sys/devices/system/cpu/cpu1/cpufreq/scaling_min_freq
chmod 444 /sys/devices/system/cpu/cpu1/cpufreq/scaling_min_freq

echo 1 > /sys/devices/system/cpu/cpu2/online
chmod 644 /sys/devices/system/cpu/cpu2/cpufreq/scaling_min_freq
echo 268800 > /sys/devices/system/cpu/cpu2/cpufreq/scaling_min_freq
chmod 444 /sys/devices/system/cpu/cpu2/cpufreq/scaling_min_freq

echo 1 > /sys/devices/system/cpu/cpu3/online
chmod 644 /sys/devices/system/cpu/cpu3/cpufreq/scaling_min_freq
echo 268800 > /sys/devices/system/cpu/cpu3/cpufreq/scaling_min_freq
chmod 444 /sys/devices/system/cpu/cpu3/cpufreq/scaling_min_freq

# Gaming mode
#
echo 0 > /sys/devices/fdb00000.qcom,kgsl-3d0/kgsl/kgsl-3d0/min_pwrlevel

# Gpu freq.max. (578Mhz,462Mhz,389Mhz)
#
echo 578000000 > /sys/devices/fdb00000.qcom,kgsl-3d0/kgsl/kgsl-3d0/max_gpuclk

# Gpu freq.min. (100Mhz,200Mhz,330Mhz)
#
echo 100000000 > /sys/class/kgsl/kgsl-3d0/devfreq/min_freq

############################
# Net Speed tweaks #
############################
# UnderUtilized Networking Tweaks below as recommended by avgjoemomma (from XDA)
sysctl -w net.ipv4.tcp_congestion_control=cubic;
# Hardening the TCP/IP stack to SYN attacks
sysctl -w net.ipv4.tcp_syncookies=1;
sysctl -w net.ipv4.conf.all.rp_filter=1;
sysctl -w net.ipv4.conf.default.rp_filter=1;
sysctl -w net.ipv4.tcp_synack_retries=2;
sysctl -w net.ipv4.tcp_syn_retries=2;
sysctl -w net.ipv4.tcp_max_syn_backlog=1024;
sysctl -w net.ipv4.tcp_max_tw_buckets=16384;
sysctl -w net.ipv4.icmp_echo_ignore_all=1;
sysctl -w net.ipv4.icmp_ignore_bogus_error_responses=1;
sysctl -w net.ipv4.tcp_no_metrics_save=1;
sysctl -w net.ipv4.tcp_fin_timeout=15;
sysctl -w net.ipv4.tcp_keepalive_time=1800;
sysctl -w net.ipv4.ip_forward=0;
sysctl -w net.ipv4.tcp_moderate_rcvbuf=1;
sysctl -w net.ipv4.route.flush=1;
sysctl -w net.ipv4.udp_rmem_min=6144;
sysctl -w net.ipv4.udp_wmem_min=6144;
sysctl -w net.ipv4.tcp_rfc1337=1;
sysctl -w net.ipv4.ip_no_pmtu_disc=0;
sysctl -w net.ipv4.tcp_ecn=0;
sysctl -w net.ipv4.tcp_sack=1;
sysctl -w net.ipv4.tcp_fack=1;
# Don't accept source routing
sysctl -w net.ipv4.conf.default.accept_source_route=0 ;
sysctl -w net.ipv4.conf.all.accept_source_route=0;
# Don't accept redirects
sysctl -w net.ipv4.conf.all.accept_redirects=0;
sysctl -w net.ipv4.conf.default.accept_redirects=0;
sysctl -w net.ipv4.conf.all.secure_redirects=0;
sysctl -w net.ipv4.conf.default.secure_redirects=0;

FILL_RESOLV() {
CHANGE=0
if [ "$1" = "" ]; then
dns1=$(getprop net.dns1 2>/dev/null)
else
dns1=$1
fi
if ! BUSYBOX grep -q $dns1 /dev/resolv-local.conf 2>/dev/null; then
if [ "x0.0.0.0" != "x$dns1" ]; then
if BUSYBOX echo $dns1 | BUSYBOX grep -q "\..*\..*\..*"; then
BUSYBOX echo "nameserver $dns1" >> /dev/resolv-local.conf
CHANGE=1
fi
fi
fi

if [ "$2" = "" ]; then
dns2=$(getprop net.dns2 2>/dev/null)
else
dns2=$2
fi
if ! BUSYBOX grep -q $dns2 /dev/resolv-local.conf 2>/dev/null; then
if [ "x0.0.0.0" != "x$dns2" ]; then
if BUSYBOX echo $dns2 | BUSYBOX grep -q "\..*\..*\..*"; then
BUSYBOX echo "nameserver $dns2" >> /dev/resolv-local.conf
CHANGE=1
fi
fi
fi
if [ `BUSYBOX wc -l /dev/resolv-local.conf | BUSYBOX awk '{ print $1 }'` -gt 4 ]; then
cat /dev/resolv-local.conf
BUSYBOX grep "nameserver.*\..*\..*\..*" /dev/resolv-local.conf | BUSYBOX tail -4 > /dev/resolv-local.conf.tmp
BUSYBOX mv -f /dev/resolv-local.conf.tmp /dev/resolv-local.conf
CHANGE=1
fi

if [ $CHANGE -eq 1 ]; then
killall -HUP dnsmasq_dhcp
fi
}

SET_NET_DNS() {
count=1
while [ $count -le 5 ]; do
while [ "x$(getprop net.dns1 2>/dev/null)" != "x0.0.0.0" ]; do
FILL_RESOLV
if dnsc 0.0.0.0 >/dev/null 2>&1; then
if dnsc 127.0.0.3 www.microsoft.com 10053 >/dev/null 2>&1; then
dns1=$(getprop net.dns1 2>/dev/null)
setprop net.dns1 0.0.0.0
dns2=$(getprop net.dns2 2>/dev/null)
if [ "x0.0.0.0" != "x$dns1" ]; then
if BUSYBOX echo $dns1 | BUSYBOX grep -q "\..*\..*\..*"; then
setprop net.dns2 $dns1
fi
fi
setprop net.change net.dnschange
setprop ro.kernel.android.ndns 2
setprop net.dnschange $(($(getprop net.dnschange) + 1));
FILL_RESOLV $dns1 $dns2
count=1;
fi
fi
if [ "x$(getprop net.dns1 2>/dev/null)" != "x0.0.0.0" ]; then
count=1;
ipcount=`BUSYBOX ip route 2>/dev/null| BUSYBOX wc -l 2>/dev/null`
if [ "x$ipcount" = "x0" ]; then
setprop net.dns1 0.0.0.0
fi
fi

RUN_DNS &

if [ "$1" = "RUN" ]; then return 0; fi

SET_NET_DNS "$2"
Responder Con Cita