android - redes - informacion mediatica
¿Es precisa esta explicación sobre VSS/RSS/PSS/USS? (1)
Eso suena correcto y también se alinea con la descripción que se encuentra aquí: http://elinux.org/Android_Memory_Usage
De la página ...
- Vss = tamaño de conjunto virtual
- Rss = tamaño de conjunto residente
- Pss = tamaño de conjunto proporcional
- Uss = tamaño de conjunto único
Leí una explicación sobre VSS / RSS / PSS / USS:
El objetivo de esta publicación es proporcionar información que ayude a interpretar los informes de memoria de varias herramientas para que se pueda determinar el verdadero uso de memoria para los procesos de Linux y el sistema.
Android tiene una herramienta llamada procrank (/ system / xbin / procrank), que enumera el uso de la memoria de los procesos de Linux en orden de mayor a menor uso. Los tamaños informados por proceso son VSS, RSS, PSS y USS.
En aras de la simplicidad en esta descripción, la memoria se expresará en términos de páginas, en lugar de bytes. Los sistemas Linux como el nuestro manejan la memoria en 4096 páginas de bytes en el nivel más bajo.
VSS (informado como VSZ de ps) es el espacio de dirección accesible total de un proceso. Este tamaño también incluye memoria que puede no residir en la RAM como mallocs que han sido asignados pero no escritos. VSS es de muy poca utilidad para determinar el uso real de memoria de un proceso.
RSS es la memoria total realmente almacenada en RAM para un proceso. RSS puede ser engañoso, ya que informa el total de todas las bibliotecas compartidas que utiliza el proceso, aunque una biblioteca compartida solo se carga en la memoria una vez, independientemente de la cantidad de procesos que la utilicen. RSS no es una representación precisa del uso de memoria para un solo proceso.
PSS difiere de RSS en que informa el tamaño proporcional de sus bibliotecas compartidas, es decir, si tres procesos usan una biblioteca compartida que tiene 30 páginas, esa biblioteca solo aportará 10 páginas al PSS que se informa para cada uno de los tres procesos. PSS es un número muy útil porque cuando el PSS para todos los procesos en el sistema se suman, esa es una buena representación para el uso total de la memoria en el sistema. Cuando se mata un proceso, las bibliotecas compartidas que contribuyeron a su PSS se distribuirán proporcionalmente a los totales de PSS para los procesos restantes que todavía usan esa biblioteca. De esta forma, PSS puede ser un poco engañoso, porque cuando un proceso se cancela, PSS no representa con precisión la memoria devuelta al sistema en general.
USS es la memoria privada total para un proceso, es decir, esa memoria que es completamente exclusiva de ese proceso. USS es un número extremadamente útil porque indica el verdadero costo incremental de ejecutar un proceso en particular. Cuando se mata un proceso, el USS es la memoria total que realmente se devuelve al sistema. USS es el mejor número para mirar cuando inicialmente sospecha de pérdidas de memoria en un proceso.
Para los sistemas que tienen Python disponible, también hay una buena herramienta llamada smem que informará las estadísticas de memoria, incluidas todas estas categorías.
# 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
#
Pero no puedo encontrar el original de este artículo, y me gustaría saber si esta explicación es precisa.