Prozess „system/bin/installd“ verursacht Speicherverlust

Bei der Überprüfung meiner laufenden Aufgaben ist mir ein Speicherverlust in Bearbeitung aufgefallen system/bin/installd. Nach Abschluss des Bootvorgangs beginnt es im Hintergrund zu laufen und verbraucht 20-30 MB RAM. Im Laufe der Zeit steigt die RAM-Nutzung allmählich an und erreicht bis zu 400 MB, was zu einem zufälligen Neustart führt.

Ich bin in der Lage, diesen Prozess ohne merkliche Auswirkungen zu beenden. Es startet sich jedoch selbst neu und führt weiterhin Speicherverluste durch.

Bevor ich versuchen kann, dieses Problem zu beheben, muss ich genau wissen, was es system/bin/installdist/was es tut – etwas, worüber ich anscheinend keine Informationen finden kann.

Kann jemand helfen?

Spezifikationen:

  • OnePlus One (gerootet)
  • Mahdi ROM (CM11-Basis), Android 4.4.4 KitKat
  • Build # KTU84Q
  • Kernel 3.4.0-Mahdi-One-kk
  • Ausführen mehrerer Xposed-Module, Init-Tweaks usw.
Darf ich wissen, wie Sie festgestellt haben, dass der Prozess Speicher verloren hat? Ich weiß nie, ob es möglich ist, die Speichernutzung für Nicht-APK zu überprüfen.
@AndrewT. Ich verwende "3C Toolbox Pro"; Sein Task-Manager zeigt alle laufenden Prozesse an. Ich kann es nur wärmstens empfehlen – es ist eine großartige App mit unzähligen Tools für Power-User.

Antworten (1)

/system/bin/installdist ein Systemdämon, der an der Installation von Anwendungen beteiligt ist. Systemklassen PackageInstallerverwenden es gerne bei ihrer Ausführung.

Dieser Artikel von DZone stammt aus dem Jahr 2013, gibt aber einige Hinweise, die auf den Weg gebracht werden können:

PackageInstaller ist die Standardanwendung für Android, um ein normales Paket interaktiv zu installieren. PackageInstaller bietet eine Benutzeroberfläche zum Verwalten von Anwendungen/Paketen. PackageInstaller ruft die InstallAppProgress-Aktivität auf, um Anweisungen vom Benutzer zu erhalten. InstallAppProgress fordert den Package Manager Service auf, das Paket über installd zu installieren. Der Quellcode ist unter /packages/apps/PackageInstaller verfügbar.

Der heutige Android-Code besagt (zum Beispiel: services/core/java/com/android/server/pm/Installer.java):

 public void onStart() {
    Slog.i(TAG, "Waiting for installd to be ready.");
    mInstaller.waitForConnection();
}

Dieselbe Datei kommentiert beim Auschecken frameworks/native/cmds/installd/installd.h(ich habe vorerst nicht weiter gesucht).

Kurz gesagt, Sie müssen sich möglicherweise den Quellcode ansehen, um mehr über zu erfahren installd, je nachdem, was Sie vorhaben.