Configurer le Taskiller (Tueur de tache) interne d'Android : (Compatible A2SD)
Il n'y a pas de widget ou de processus de taskiller à lancer.
En faite vous configurez le noyau d'Android pour qu'il gère les processus comme vous le voulez. Tandis que les taskillers ont besoin d'être lancés régulièrement (automatiquement ou à la main) pour vérifier la mémoire et les processus, cette méthode est complétement géré par le noyau d'Android, dès le moment ou la mémoire disponible descends en dessous du seuil limite configuré.
Il n'est également pas nécessaire d'avoir une "ignore-list" car le noyau d'Android sait quelle applications il peut tuer ou non. De plus vous pouvez configurez avec précision, quand et quel processus tuer et le noyau utilisera sa liste des "dernières applications récemment utilisé" et tuera en premier les processus les moins nécessaires.
Les taskiler externes ne tuent que les applications "visibles". Ils ne peuvent pas voir quel processus est "vide" (ceux qui ne comportent pas d'activité) ou ceux qui étaient en tache de fond depuis longtemps, etc...
Lorsque les gens vous disent que les taskiller sont nuisibles, ils sous-entendent qu'ils interfèrent avec la gestion des processus d'Android. La méthode utilisé permet a Android de gérer lui même ses processus, vous lui ordonné juste d'être plus restrictif
Cela est donc moins invasif pour le systême et il (devrait) y avoir moins d'effet secondaire.
********************************************************************
Voilà pour l'introduction je n'irais pas plus loin car l'explication est technique et tout ceci étant déjà expliquer (en anglais) sur ce thread.Passons à ce qui nous intéresse:
Pré-requis:
Disposer d'un smartphone rooté ou disposer d'une Custom ROM rooté.
Si ce n'est pas le cas, allez voir ce post.
Etape 1: Faire un nandroid backup ! (On est jamais sur de rien)
Etape 2: Trouver votre init-script, pour ajouter la commande.
Ne connaissant pas quel init-script (script d'initialisation) est installé sur les autres ROMs, je m'adresse à ceux disposant de la Modaco Custom ROM 3.1. L'init-script se trouve ici: "/system/init.d/ramzswap.sh" ( qui est normalement utilisé pour activer compcache). Pour les autres, regardez du coté "/system/init.d/" ou "/system/etc/init.d/" si vous trouvez quelque chose, ça dépends de votre ROM. En théorie vous pouvez utiliser n'importe quel script qui sera executer au démarrage. On veut juste que vous ajoutez cette commande au script.
Etape 3: Ajouter la commande à votre script.
- Lancer une invite de commande.
- Placez vous dans le dossier tools du SDK et taper:
adb remount (permet la lecture/écriture du systeme de fichier /system/ )
puis:
adb pull /system/init.d/ramzswap.sh . (N'oubliez pas le point)
Cela va télécharger le fichier 'ramzswap.sh' et le placer dans votre dossier 'tools'. Ouvrez-le avec un éditeur (N'utilisez pas Notepad.exe sous Windows il n'affiche pas correctement les script linux) Sous Windows je recommande Notepad++ ou utilisez Wordpad si vous n'avez rien d'autre. Sous Linux n'importe quel éditeur fera l'affaire.
- Ajouter un # devant les lignes:
/system/xbin/insmod /system/lib/modules/xvmalloc.ko
/system/xbin/swapon /dev/block/ramzswap0
On a donc:
#/system/xbin/insmod /system/lib/modules/xvmalloc.ko
#/system/xbin/swapon /dev/block/ramzswap0
Cela désactivera compcache (inutile grâce à ce nouveau tweak)
- Insérer la commande "echo" à la fin du fichier !
- Exemple:
echo "1536,2048,4096,5120,15360,25600" > /sys/module/lowmemorykiller/parameters/minfree
Pour ceux qui dispose de la Modaco Custom ROM 3.1 votre fichier 'ramzswap.sh' devrait ressemblait a ceci:
- Enregistrer le fichier/system/xbin/insmod /system/lib/modules/tun.ko
/system/xbin/insmod /system/lib/modules/lzo_decompress.ko
/system/xbin/insmod /system/lib/modules/lzo_compress.ko
#/system/xbin/insmod /system/lib/modules/xvmalloc.ko
#/system/xbin/swapon /dev/block/ramzswap0
echo "10" > /proc/sys/vm/swappiness
echo "performance" > /sys/devices/system/cpu/cpu0/cpufreq/scaling_governor
echo "1536,2048,4096,5120,15360,25600" > /sys/module/lowmemorykiller/parameters/minfree
- Copier-le là ou il se trouvait avec la commande suivante:
adb push ramzswap.sh /system/init.d/
puis tapez:
adb shell chmod a+x /system/init.d/ramzswap.sh (pour le rendre exécutable )
Etape 4: Redémarrer votre smartphone.
Si vous avez tout fait correctement, il va redémarrer normalement et vous pouvez vérifier que votre script fonctionne, en tapant la commande suivante:
adb shell cat /sys/module/lowmemorykiller/parameters/minfree
Vous verrez alors s'afficher les 6 nombres que vous avez précédemment ajoutés.
Ces 6 nombres sont très important ! pour plus d'information Voir le post de l'auteur.
Voilà !
********************************************************************
Tutoriel réalisé à partir de l'article suivant:How to configure Android's *internal* taskiller par androcheck@xda-developers
********************************************************************
Avis perso:Ceux que ça permet: une gestion intelligente et performante des applications et processus.
Ceux que ça nous apporte:
- Plus besoin de taskiller externe pour libérer de la RAM, tout est automatique !
- Les lags c'est de l'histoire ancienne ! Rapidité, fluidité ! On redécouvre notre HTC Hero, plus rapide qu'une guêpe !
- Meilleure autonomie (en tuant intelligemment les applications et processus l'autonomie est amélioré)
Le tweak étant très efficace je suis prêt à parier qu'il sera intégré dans toutes les futures Custom ROMs ! (1.5 & 2.1)
Faites un retour !
[Edité par Caelle : Màj du 29/01/10]
Modifié par Caelle, 29 Jan 2010 - 14:33.