Ich las eine Erklärung über VSS/RSS/PSS/USS:Ist diese Erklärung über VSS/RSS/PSS/USS genau?
Das Ziel dieses Beitrags ist es, Informationen zu liefern, die bei der Interpretation Speicher Berichte von verschiedenen Werkzeugen so die wahren Speichernutzung für Linux Prozesse unterstützen und Das System kann bestimmt werden.
Android hat ein Tool namens procrank (/ system/xbin/procrank), das die Speicherauslastung von Linux-Prozessen in der Reihenfolge von der höchsten zur niedrigsten Verwendung auflistet. Die pro Prozess angegebenen Größen sind VSS, RSS, PSS und USS.
Aus Gründen der Einfachheit in dieser Beschreibung wird Speicher in Seiten und nicht als Bytes ausgedrückt. Linux-Systeme wie unseres verwalten Speicher in 4096-Byte-Seiten auf der untersten Ebene.
VSS (als VSZ von ps gemeldet) ist der gesamte zugängliche Adressraum eines Prozesses. Diese Größe umfasst auch Speicher, der nicht im RAM resident ist, wie Mallocs, die zugewiesen, aber nicht beschrieben wurden. VSS ist für die Bestimmung der tatsächlichen Speichernutzung eines Prozesses sehr wenig nützlich.
RSS ist der Gesamtspeicher, der tatsächlich für einen Prozess im RAM gehalten wird. RSS kann irreführend sein, da es die Summe aller vom Prozess verwendeten gemeinsam genutzten Bibliotheken meldet, obwohl eine gemeinsam genutzte Bibliothek nur einmal in den Speicher geladen wird, unabhängig davon, wie viele Prozesse sie verwenden. RSS ist keine genaue Darstellung der Speichernutzung für einen einzelnen Prozess.
PSS unterscheidet sich von RSS darin, dass es die proportionale Größe seiner gemeinsamen Bibliotheken meldet, dh wenn drei Prozesse alle eine gemeinsam genutzte Bibliothek mit 30 Seiten verwenden, trägt diese Bibliothek nur 10 Seiten zu der PSS bei, die für jede von ihnen gemeldet wird die drei Prozesse. PSS ist eine sehr nützliche Nummer, denn wenn die PSS für alle Prozesse im System zusammengeführt wird, ist das eine gute Repräsentation für die gesamte Speicherbelegung im System. Wenn ein Prozess beendet wird, werden die gemeinsam genutzten Bibliotheken, die zu seiner PSS beigetragen haben, proportional auf die PSS-Summen für die verbleibenden Prozesse verteilt, die diese Bibliothek weiterhin verwenden. Auf diese Weise kann PSS leicht irreführend sein, denn wenn ein Prozess beendet wird, repräsentiert PSS nicht genau den Speicher, der an das Gesamtsystem zurückgegeben wird.
USS ist der gesamte private Speicher für einen Prozess, d. H. Der Speicher, der für diesen Prozess vollständig eindeutig ist. USS ist eine äußerst nützliche Zahl, da sie die wahren zusätzlichen Kosten für die Ausführung eines bestimmten Prozesses angibt. Wenn ein Prozess beendet wird, ist die USS der Gesamtspeicher, der tatsächlich an das System zurückgegeben wird. USS ist die beste Nummer, die beobachtet werden muss, wenn in einem Prozess zunächst verdächtige Speicherlecks auftreten.
Für Systeme, die Python verfügbar haben, gibt es auch ein nettes Werkzeug namens smem, das Speicherstatistiken einschließlich all dieser Kategorien meldet.
# procrank
procrank
PID Vss Rss Pss Uss cmdline
481 31536K 30936K 14337K 9956K system_server
475 26128K 26128K 10046K 5992K zygote
526 25108K 25108K 9225K 5384K android.process.acore
523 22388K 22388K 7166K 3432K com.android.phone
574 21632K 21632K 6109K 2468K com.android.settings
521 20816K 20816K 6050K 2776K jp.co.omronsoft.openwnn
474 3304K 3304K 1097K 624K /system/bin/mediaserver
37 304K 304K 289K 288K /sbin/adbd
29 720K 720K 261K 212K /system/bin/rild
601 412K 412K 225K 216K procrank
1 204K 204K 185K 184K /init
35 388K 388K 182K 172K /system/bin/qemud
284 384K 384K 160K 148K top
27 376K 376K 148K 136K /system/bin/vold
261 332K 332K 123K 112K logcat
33 396K 396K 105K 80K /system/bin/keystore
32 316K 316K 100K 88K /system/bin/installd
269 328K 328K 95K 72K /system/bin/sh
26 280K 280K 93K 84K /system/bin/servicemanager
45 304K 304K 91K 80K /system/bin/qemu-props
34 324K 324K 91K 68K /system/bin/sh
260 324K 324K 91K 68K /system/bin/sh
600 324K 324K 91K 68K /system/bin/sh
25 308K 308K 88K 68K /system/bin/sh
28 232K 232K 67K 60K /system/bin/debuggerd
#
Aber ich kann nicht das Original dieses Artikels finden, und ich möchte wissen, ob diese Erklärung richtig ist.
Ich bin gespannt ... wo du hast Kopieren/Einfügen dieser Info aus? – Skeets