Najpierw musimy pobrać odpowiednie pliki SWAP i rozpakować je np. na pulpicie.
Wystarczy, że wszystkich ustawień będziemy dokonywać na pliku user.conf, to z niego system będzie informowany jak ma konfigurować swap. Plik user.conf otwieramy i zapisujemy zwykłym edytorem tekstu. Dla przykładu podam kilka możliwych ustawień:
- Aby używać tylko partycji z karty pamięci:
set compcache=0
set cc_backingswap_en=0
set linux_swap_en=1
- Aby używać samego compcache:
set compcache=1
set cc_backingswap_en=0
set linux_swap_en=0
set cc_disksize=32 (32*1024 = 32768kb = 32MB)
set cc_memlimit=0
- Aby używać compcache i backing swap:
set compcache=1
set cc_backingswap_en=1
set linux_swap_en=0
set cc_disksize=0
-set cc_memlimit=8
- Aby używać comcache razem z linux swap:
set compcache=1
set cc_backingswap_en=0
set cc_disksize=32
set cc_memlimit=0
set linux_swap_en=1
Oczywiście możliwe jest więcej konfiguracji, wszystko wedle potrzeb użytkownika.
Jeśli ustawiliśmy optymalne ustawienie dla naszych potrzeb, możemy wgrać pliki do systemu. Możemy wybrać do tego jedną z dwóch metod:
1. Aby wgrać pliki przez terminal, nagrywamy je na krtę telefonu, a w terminalu wpisujemy:
su
mount -o remount,rw /dev/block/mtdblock3 /system
cp /sdcard/userinit.sh /system/sd
cp /sdcard/user.conf /system/sd
chmod 755 /system/sd/user.conf
chmod 755 /system/sd/userinit.sh
reboot
2. Aby wgrać pliki przez adb, przechodzimy w CMD na pulpit, lub tam gdzie są pliki konfiguracyjne i wpisujemy:
adb push userinit.sh /system/sd
adb shell chmod 755 /system/sd/userinit.sh
adb push user.conf /system/sd
adb shell chmod 755 /system/sd/user.conf
adb shell reboot
Po resecie nasz telefon powinien ustawić SWAP tak jak konfigurowalismy w plikach. Aby to sprawdzić możemy w terminalu wpisać prostą komendę:
free

Możemy też wyświetlić bardziej zaawansowaną diagnozę wpisując w terminalu:
su
sh /system/sd/userinit.sh -s
lub przez adb w CMD:
adb shell sh /system/sd/userinit.sh -s

Życzę udanych SWAPów.
Misiek testowałeś jakieś konfiguracje mieszane i które wg Ciebie najlepiej się spisują? bateria leci szybciej przez to?
OdpowiedzUsuńJa zazwyczaj używam samej partycji swap-linux. Bateria na jakimkolwiek swapie nie powinna ucierpieć. Należy pamiętać aby nie stosować linux-swap razem z backing swap - obie wykorzystują partycję na karcie i przez to się zagryzą. ;)
OdpowiedzUsuńa czym się różnią?
OdpowiedzUsuńBacking-swap to taki dodatkowy SWAP (na karcie SD) wspomagający compcache
OdpowiedzUsuńmoglbys mi wytlumaczyc jak mam zedytowac ten plik user.conf? mam wykasowac z niego wszystko i wstawic to co jest napisane np. dla samego compcache?
OdpowiedzUsuńNie Adam, po prostu odszukaj te linijki w pliku i odpowiedni ustaw parametry przy nich. Nic nie kasuj!!
OdpowiedzUsuńhmm ale u mnie te formuly brzmia inaczej niz podajesz w tutorialu, moze podales zly link?
OdpowiedzUsuń#compcache related parameters
compcache{
compcache_en=1
cc_disksize=32
cc_memlimit=16
cc_backingswap_en=0
cc_backingswap=/dev/block/mmcblk0p3
cc_swappiness=30
}
takie sa parametry do compcache w pliku user.conf
zrobic to analogicznie i nie przejmowac sie ze troche sie roznia?
OdpowiedzUsuńtak i tu #compcache_en=1 - ustawia się na 0 lub 1 i analogiczne przy linux swap
OdpowiedzUsuńlinux_swap{
linux_swap_en=0 lub 1 # enable(1) or disable(0) linux swap
linux_swap_partition=/dev/block/mmcblk0p3 # swap partition device
swappiness=30 # default 60
Możliwości programowania w systemie Android są ogromne, tak jak przedstawiłeś.
OdpowiedzUsuńChciałbym załączyć link do krótkiego artykułu.
http://reembedded.com/index.php?option=com_content&view=article&id=15%3Aeclipsed-android-application-introdution-&catid=1%3Alatest-news&Itemid=112&lang=en