Was ist "Lost RAM" in dumpsys meminfo?

8

Unten finden Sie ein Beispiel dumpsysmit verlorenem RAM. Welche Bedeutung hat KitKat? Wie kann es zurückgefordert und verwendet werden?

Total PSS by OOM adjustment:
    31841 kB: Native
               13173 kB: zygote (pid 23001)
                4372 kB: surfaceflinger (pid 23000)
                3721 kB: mediaserver (pid 126)
                3317 kB: glgps (pid 22993)
                1656 kB: drmserver (pid 125)
                 995 kB: wpa_supplicant (pid 23148)
                 786 kB: netd (pid 121)
                 518 kB: sdcard (pid 132)
                 475 kB: vold (pid 119)
                 458 kB: keystore (pid 128)
                 448 kB: /init (pid 1)
                 412 kB: adbd (pid 134)
                 254 kB: ueventd (pid 108)
                 238 kB: dhcpcd (pid 10617)
                 229 kB: tf_daemon (pid 130)
                 200 kB: installd (pid 127)
                 185 kB: dumpsys (pid 14207)
                 144 kB: healthd (pid 117)
                 139 kB: debuggerd (pid 122)
                 121 kB: servicemanager (pid 118)
    48217 kB: System
               48217 kB: system (pid 23064)
    49095 kB: Persistent
               34012 kB: com.android.systemui (pid 23163 / activities)
                7719 kB: com.android.phone (pid 23357)
                4676 kB: com.android.nfc (pid 23371)
                2688 kB: com.nuance.xt9.input (pid 23344)
    24945 kB: Foreground
               24945 kB: com.android.settings (pid 24811 / activities)
    17136 kB: Visible
               14026 kB: com.google.process.location (pid 23472)
                3110 kB: com.android.defcontainer (pid 13976)
     6911 kB: Perceptible
                6911 kB: com.google.android.inputmethod.latin (pid 23298)
    14277 kB: A Services
               14277 kB: com.google.process.gapps (pid 23513)
    26422 kB: Home
               26422 kB: com.android.launcher (pid 23395 / activities)
    21798 kB: B Services
               16242 kB: com.google.android.apps.currents (pid 23767)
                5556 kB: android.process.media (pid 7738)
   145869 kB: Cached
               41588 kB: com.google.android.apps.plus (pid 24689)
               21417 kB: com.google.android.deskclock (pid 23966 / activities)
               14463 kB: com.google.android.apps.docs (pid 8644)
               14303 kB: com.google.android.gm (pid 9115)
               11014 kB: com.google.android.music:main (pid 7716)
               10688 kB: com.google.android.apps.magazines (pid 13892)
               10240 kB: com.google.android.gms (pid 23338)
                9882 kB: com.google.android.youtube (pid 5131)
                8807 kB: com.google.android.apps.walletnfcrel (pid 8937)
                3467 kB: com.google.android.setupwizard (pid 8922)

Total RAM: 998096 kB
 Free RAM: 574945 kB (145869 cached pss + 393200 cached + 35876 free)
 Used RAM: 392334 kB (240642 used pss + 107196 buffers + 3856 shmem + 40640 slab)
 Lost RAM: 30817 kB
   Tuning: 64 (large 384), oom 122880 kB, restore limit 40960 kB (high-end-gfx)
stat
quelle
Kurze Berechnung (Beantwortung des Titels Ihrer Frage) : "Lost RAM" = total - used - free. Hm, Speicherlecks? Durch Neustart zurückfordern? 30 MB sind vielleicht nicht viel (im Vergleich zu 1 GB insgesamt), aber es sind 3% und kein Spaß ...
Izzy
Ich habe jederzeit mehr als 300 MB RAM auf meinem Gerät verloren. Ich würde auch gerne wissen, warum es verloren geht und ob es eine Möglichkeit gibt, es zurückzugewinnen.
Wang Dingwei
stackoverflow.com/questions/21881122/… kann dies helfen
samnaction

Antworten:

7

RAM verloren ist TotalRAM - FreeRAM - UsedRAM. Das heißt, es ist der Unterschied zwischen der RAM-Auslastung, die Android berechnen kann, und dem tatsächlich verfügbaren RAM.

Manchmal kann es sogar negativ sein, da Probleme, bei denen RAM über Prozesse hinweg gemeinsam genutzt wird, mehr als einmal gezählt werden. Die Fahrer werden meistens dafür verantwortlich gemacht. Es gibt eine memtrackHAL für sie, um ihre Speicherabrechnung an Android zu melden, aber einige Treiber machen es einfach nicht richtig.

Wenn Sie einen großen Wert für "Lost RAM" sehen (was in der ursprünglichen Frage nicht der Fall ist, aber Wang spricht), liegt dies wahrscheinlich an einem Fehler, der leider nicht zurückgefordert werden kann. Sie können in ein /d/ionvirtuelles Verzeichnis auf Ihrem Gerät schauen (wahrscheinlich wird ein gerootetes Gerät benötigt) und darin enthaltene Berichte nach "verwaisten" Zuordnungen durchsuchen.

Mikhail Naganov
quelle