2012年2月16日 星期四

tuning MB511 with sysctl

# white /system/etc/sysctl.conf

kernel.threads-max=4096 #max threads, smart phoen really use really use so much threads?
vm.swappiness = 0 #MB511 can't use swap, so...
vm.dirty_expire_centisecs=0
vm.dirty_writeback_centisecs=0
vm.min_free_kbytes = 4096 #keep minimum of 4MB idle space
vm.dirty_ratio = 90
vm.dirty_background_ratio = 70
vm.vfs_cache_pressure = 10
vm.panic_on_oom = 2
vm.oom_kill_allocating_task = 1 #use android memory manager
kernel.panic = 5 #Enabling kernel panic reboot
kernel.shmmax = 2147483648 #256MB
kernel.shmall = 16777216 #16MB

#userinit.sh
sysctl -p

echo "1536,2048,4096,8192,16384,24576" > /sys/module/lowmemorykiller/parameters/
minfree #use android memory manager


JUST FOR FUN!!

2012年2月14日 星期二

tuning MB511


#write in userinit.sh
#use cgroup tuning cpu tasks, default init.rc can't write

busybox mkdir -p /dev/cgroup/cpu
busybox mount -t cgroup cgroup -o cpu /dev/cgroup/cpu
echo "/system/local/sbin/cgroup_clean" > /dev/cgroup/cpu/release_agent

busybox mkdir -m 0777 /dev/cgroup/cpu/bg_root
chown root.root /dev/cgroup/cpu/bg_root/tasks
chmod 0777 /dev/cgroup/cpu/bg_root/tasks
echo "500" > /dev/cgroup/cpu/bg_root/cpu.shares #root can get 50% cpu time?

busybox mkdir -m 0777 /dev/cgroup/cpu/bg_non_interactive
chown system.system /dev/cgroup/cpu/bg_non_interactive/tasks
chmod 0777 /dev/cgroup/cpu/bg_non_interactive/tasks
echo "200" > /dev/cgroup/cpu/bg_non_interactive/cpu.shares #system can get 20% cpu time ?

echo "1" > /dev/cgroup/cpu/notify_on_release
echo "1" > /dev/cgroup/cpu/bg_root/notify_on_release
echo "1" > /dev/cgroup/cpu/bg_non_interactive/notify_on_release

nice logcat > /system/sd/swap/$(date +%Y%m%d-%H).log &    #save log
find /system/sd/swap -mtime +3 -name "*.log" -exec rm -rf {} \ #del over 3 days log
nice /data/local/Clear.sh &
nice /data/local/SCgroupTask.sh & //60s update tasks

#Clear.sh

#!/system/bin/sh
while [ true ]
do
echo 'start'
for file in `find /system/sd/logs -mtime +3 -name '*.log' -print 2>/dev/null`
do
rm $file
done

sleep 24h
done


#SCgroupTask.sh
-----
while [ true ]
do 
    ps | grep root | awk '{print $2}' > /dev/cgroup/cpu/bg_root/tasks #add root tasks to cgroup
    ps | grep system\  | awk '{print $2}' > /dev/cgroup/cpu/bg_non_interactive/tasks  #add system tasks to cgroup
    sleep 60s
done
JUST FOR FUN!!

2012年2月10日 星期五