Ich habe einen gerooteten OG Droid, auf dem ich häufig benutzerdefinierte ROMs installiere. Ich habe in allen Builds von Froyo und Gingerbread festgestellt, dass ich versucht habe, im Laufe der Zeit bestimmte Dienste mehr RAM zu beanspruchen und neue Prozesse hervorzubringen.
Insbesondere ist mir aufgefallen, dass Google Services dies konsequent tut. Anfänglich benötigt es vielleicht 7 MB RAM und hat nur 1 Prozess (com.google.process.gapps). Aber nach gut 10+ Stunden werden Android Core Apps (android.process.acore) und Calendar Storage (com.android.providers.calendar) erscheinen. Derzeit liegt es bei 21 MB Nutzung.
Dieser Speicher wird nie zurückgefordert und das Telefon wird hängen bleiben, da der interne Android-Task-Killer Aufgaben häufiger beenden muss. Irgendwann muss ich neu starten.
Warum passiert das und kann ich es beheben?
Die zusätzlichen Prozesse werden bei Bedarf erstellt (z. B. wenn Sie den Kalender öffnen). Der zunehmende Speicherverbrauch ergibt sich aus der Tatsache, dass Java nicht in der Lage ist, Speicher an das System zurückzugeben (zu stapeln). Aus diesem Grund hat Google den ActivityManager implementiert, der von Zeit zu Zeit den gesamten Prozess beendet, um ihn später mit geringerem Speicherbedarf neu zu starten. Genau das versucht die Task-Killer-App zu tun, was ziemlich überflüssig ist.
Der ActivityManager macht seine Arbeit ziemlich gut auf meinem Galaxy S mit nur 329 MB RAM, die dem System zur Verfügung stehen. Ich habe nie einen Taskkiller gebraucht. Dies ist jedoch nur eine Problemumgehung für Geräte mit eingeschränkten Ressourcen wie Smartphones. Aktuelle High-End-Android-Geräte haben bis zu 1 GB Speicher oder mehr, sodass der ActivityManager immer mehr arbeitslos wird.
Matthäus Lesen
SAGExSDX