¿Cómo encuentro el tamaño de memoria residente de un proceso en busybox?


16

Corro topen busybox y muestra todos los procesos y su tamaño de memoria virtual.

¿Cómo determino cuánta RAM está usando cada proceso?

Respuestas:


17

En busybox, "ps" no tiene una opción "-o", pero "ps l" incluye la columna RSS.

Si el O / S subyacente es Linux, también puede obtener detalles más específicos para un proceso dado de:

cat /proc/PID/status

El resultado se ve así:

Nombre: ceniza
Estado: S (durmiendo)
Tgid: 1990
Pid: 1990
PPid: 1
TracerPid: 0
Uid: 0 0 0 0
Gid: 0 0 0 0
FDSize: 32
Grupos: 0 
Pico Vm: 1592 kB
Tamaño de Vm: 1592 kB
VmLck: 0 kB
VmPin: 0 kB
VmHWM: 552 kB
VmRSS: 552 kB
VmData: 268 kB
VmStk: 136 kB
VmExe: 688 kB
VmLib: 472 kB
VmPTE: 16 kB
VmSwap: 0 kB
Hilos: 1
SigQ: 14/340
SigPnd: 00000000000000000000000000000000
ShdPnd: 00000000000000000000000000000000
SigBlk: 00000000000000000000000000000000
SigIgn: 00000000000000000000000004804004
SigCgt: 00000000000000000000000000080002
CapInh: 0000000000000000
CapPrm: ffffffffffffffff
CapEff: ffffffffffffffff
CapBnd: ffffffffffffffff
Cpus_allowed: 1
Cpus_allowed_list: 0
volunte_ctxt_switches: 49
nonvoluntary_ctxt_switches: 15

En esta lista, VmRSS es el conjunto residente actual y VmHWM es el conjunto residente con marca de agua alta.


BusyBox pses compatible -odesde 2006 , pero debe construirse con la opción de compilación "DESKTOP".
JdeBP

12
ps -o pid,user,vsz,rss,comm,args

La cuarta columna (rss) es el tamaño del conjunto residente, la memoria física no intercambiada utilizada por una tarea, en kilobytes.


no hay bandera -o en busybox ps
Chad G

Hay si está hecho para tenerlo. Ver la respuesta de Andrew Fullford.
JdeBP

-1
 ps -q pid -o rss= 

Esto debería funcionar


2
Agregue en qué plataforma se está ejecutando. Mi psno tiene -qopción y estoy ejecutando suse linux.
JamesL

1
Parece que la versión de busyboxps (último commit 4e08a12 de enero de 2017) tampoco tiene esa opción.
AdminBee

-qpidlist Seleccione por PID (modo rápido). Esto selecciona los procesos cuyos números de ID de proceso aparecen en pidlist. Con esta opción, ps lee la información necesaria solo para los pids enumerados en la lista pid y no aplica reglas de filtrado adicionales. El orden de los pids está sin clasificar y conservado. No se permiten opciones de selección adicionales, clasificación y listados de tipos de bosque en este modo. Idéntico a q y --quick-pid.
Kevdog777

@ Kevdog777 ¿podría especificar en qué plataformas se implementa esto? No parece ser un requisito POSIX . Además, el OP preguntó explícitamente sobre el entorno busybox ...
AdminBee

Lo siento @AdminBee, encontré eso aquí: man7.org/linux/man-pages/man1/ps.1.html ya que la gente no sabía lo que -qsignificaba. Entonces solo dice Linux.
Kevdog777
Al usar nuestro sitio, usted reconoce que ha leído y comprende nuestra Política de Cookies y Política de Privacidad.
Licensed under cc by-sa 3.0 with attribution required.