Question:
Puis-je le configurer pour que le «Téléphone» de mon téléphone ait la priorité sur toutes les autres applications?
Matt
2010-09-28 01:28:44 UTC
view on stackexchange narkive permalink

De temps en temps, mon téléphone devient très lent lorsque je suis multitâche, ce qui est ennuyeux mais très bien. Existe-t-il un moyen pour moi de le configurer de sorte que l'application Dialer ait la priorité sur tout le reste, volant rapidement les ressources dont elle a besoin pour fonctionner aussi vite que possible?

De plus, je suis conscient de la pléthore de tueurs de tâches disponibles, mais je ne suis pas intéressé à moins que cela ne me permette spécifiquement de définir le composeur comme VIP ou de m'assurer d'une certaine manière que le numéroteur obtient les premiers dibs ressources.

Unrooted Moto Droid sur 2.2

N'utilisez jamais un tueur de tâches sur quelque chose de plus récent que 2.1. Il interfère avec le noyau et cause généralement plus de mal que de bien.
Trois réponses:
#1
+5
Bryan Denny
2010-09-28 02:02:43 UTC
view on stackexchange narkive permalink

Je ne pense pas qu'il soit possible de hiérarchiser les fils / applications sous Android. Par programme, vous définiriez la priorité des threads ici, mais ce serait vos threads dans votre application. Vous ne devriez pas être en mesure de faire cela contre l'application de quelqu'un d'autre à moins d'avoir la signature de son développeur car toutes les applications sont en bac à sable l'une de l'autre (sauf autorisation).

À la place, Je me concentrerais sur l'amélioration des performances globales de votre téléphone:

  • Préserver la mémoire:
    • Réduire le nombre de services en cours d'exécution
    • Supprimer les applications que vous faites pas utiliser (en particulier ceux qui génèrent des services)
  • Overclocking (nécessite root et épuisera plus de batterie, mais pourrait être allié en exécutant un noyau sous tension) ou en installant un mod personnalisé avec des ajustements de performances
    • En remarque, l'overclocking du Motorola Droid le rend beaucoup plus réactif que la vitesse d'horloge par défaut de 550-600 mhz, mais je trouve que la batterie est trop déchargée sauf si je l'ai mon téléphone est branché sur une source d'alimentation. Si vous transportez une batterie de rechange comme moi, ce n'est peut-être pas si grave

Vous avez raison de ne pas utiliser de tueur de tâches. Le système d'exploitation Android a été conçu pour gérer les tâches de manière appropriée et vous gaspilleriez sinon des ressources en exécutant un service de suppression automatique toutes les X minutes (car ces tâches tuées vont juste réapparaître) et pourraient causer d'autres problèmes (tuer une tâche qui la carte SD, par exemple, pourrait entraîner une corruption de fichier). La seule chose pour laquelle les tueurs de tâches sont bons est pour ce que vous en utiliseriez normalement: pour tuer les processus bloqués.

Oui, ma performance globale n'est pas mais de temps en temps (généralement au plus au moment opportun), elle se raccroche et je ne peux pas passer un appel téléphonique. C'est généralement lorsque je conduis au travail et que j'écoute un podcast. Le téléphone est branché et la température augmente généralement (ce qui, à mon avis, affecte les performances), puis il devient lent et parfois difficile de passer des appels rapidement. Je peux simplement ajouter une ligne à mon compte et obtenir un vieux téléphone à clapet pour passer des appels au travail.
D'accord avec Bryan ici. Une petite note, je ne recommanderais toujours pas un tueur de tâches pour tuer les processus bloqués. J'utiliserais une application de surveillance de processus comme OS Monitor pour afficher les processus et tuer quelque chose qui est bloqué. Juste ma préférence personnelle pour éloigner les gens des tueurs de tâches.
@Matt, Je suivrais les conseils de Bryan et supprimerais les applications inutilisées et essayerais de nettoyer votre téléphone et votre carte SD. Vous seriez surpris de l'ampleur de la différence que cela peut faire. Et vous ferait économiser de l'argent.
#2
+1
Lie Ryan
2010-12-30 20:58:42 UTC
view on stackexchange narkive permalink

La commande Linux nice et renice (use terminal) pourrait être ce que vous recherchez. Le programme renice est utilisé pour définir la priorité de planification CPU et IO d'un processus en cours d'exécution; plus la valeur de nice est élevée (plus le programme est agréable), plus la priorité de planification est basse, et les programmes avec une valeur de nice faible (IOW, "moyenne") ont une priorité de planification plus élevée.

Cependant, je ne suis pas tout à fait sûr comment les bonnes valeurs sont utilisées par le framework Android. Ici: http://code.google.com/p/openeclair/issues/detail?id=97, il est laissé entendre que les applications pour la maison s'empêchent d'être tuées en se fixant avec un très faible gentil valeur; et à moins que le noyau Android ne s'écarte trop du noyau Linux en amont, le processeur et le planificateur d'E / S devraient utiliser une valeur intéressante pour donner la priorité à la planification du processeur et des E / S.

Vous devrez peut-être être rooté et avoir busybox.

Juste une remarque: les valeurs de Nice ne sont utilisées que pour la planification du processeur, pas pour les E / S.
@Flow: La valeur nice est utilisée pour déterminer la priorité d'E / S initiale.
Pourriez-vous sauvegarder votre réclamation par une référence / un devis? La valeur nice détermine uniquement la quantité de tranches de temps qu'un processus obtient dans la planification du processeur lorsque le planificateur CFS est actif. Le noyau Linux a un planificateur d'E / S supplémentaire qui n'inclut pas AFAIK la valeur intéressante pour ses calculs. Normalement, un planificateur d'E / S optimisera le débit, quelle que soit la valeur de nice. Il existe également un binaire pour le noyau Linux, qui s'appelle «ionice». Mais ce n'est pas la même chose que la belle valeur du processus.
@Flow: à partir de la page de manuel d'ionice http://linux.die.net/man/1/ionice: * La priorité [par défaut] dans la classe de meilleur effort sera dérivée dynamiquement du niveau de processeur agréable du processus: io_priority = ( cpu_nice + 20) / 5. *
@Flow: une fois que le programme est en cours d'exécution, ionice peut être utilisé pour définir la priorité d'E / S afin qu'elle ne soit plus liée à la valeur intéressante du processeur. Cependant, la priorité d'E / S initiale est, par défaut, dérivée de la valeur initiale du CPU nice.
Merci. J'ai également trouvé que `man ionice` documente ceci pour le meilleur planificateur d'effort. Je n'étais pas au courant de cela, belle découverte. :-)
#3
  0
Matt
2010-12-30 04:03:00 UTC
view on stackexchange narkive permalink

AutoKiller Memory Optimizer (root uniquement) ou Gestion automatique de la mémoire

Ce n'est pas spécifique au composeur, mais vous pouvez lui donner une priorité plus élevée.



Ce Q&R a été automatiquement traduit de la langue anglaise.Le contenu original est disponible sur stackexchange, que nous remercions pour la licence cc by-sa 2.0 sous laquelle il est distribué.
Loading...