Come posso trovare la dimensione della memoria residente di un processo su busybox?


16

Corro topsu busybox e mostra tutti i processi e le loro dimensioni di memoria virtuale.

Come determinare la quantità di RAM utilizzata da ciascun processo?

Risposte:


17

Su busybox, "ps" non ha un'opzione "-o", ma "ps l" include la colonna RSS.

Se l'O / S sottostante è Linux, puoi anche ottenere dettagli più specifici per un dato processo da:

cat /proc/PID/status

L'output è simile al seguente:

Nome: cenere
Stato: S (dormendo)
Tgid: 1990
Pid: 1990
PPid: 1
TracerPid: 0
Uid: 0 0 0 0
Gid: 0 0 0 0
Dimensione FDS: 32
Gruppi: 0 
VmPeak: 1592 kB
Dimensione 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
Discussioni: 1
SigQ: 14/340
SigPnd: 0000000000000000000000000000000000
ShdPnd: 0000000000000000000000000000000000
SigBlk: 0000000000000000000000000000000000
SigIgn: 00000000000000000000000004804004
SigCgt: 00000000000000000000000000080002
CapInh: 0000000000000000
CapPrm: ffffffffffffffff
CapEff: ffffffffffffffff
CapBnd: ffffffffffffffff
Cpus_allowed: 1
Cpus_allowed_list: 0
voluntary_ctxt_switches: 49
nonvoluntary_ctxt_switches: 15

In questo elenco, VmRSS è il set residente corrente e VmHWM è il set residente high-mark.


BusyBox psè supportato -odal 2006 , ma deve essere creato con l'opzione di compilazione "DESKTOP".
JdeBP

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

La quarta colonna (rss) è la dimensione del set di residenti, la memoria fisica non scambiata utilizzata da un'attività, in kiloByte.


non c'è -o bandiera su busybox ps
Chad G

C'è se è costruito per averlo. Vedi la risposta di Andrew Fullford.
JdeBP

-1
 ps -q pid -o rss= 

questo dovrebbe funzionare


2
Aggiungi quale piattaforma stai utilizzando. Il mio psnon ha -qopzioni e sto eseguendo suse linux.
JamesL

1
Sembra che neanche la versione di busybox di ps(ultimo commit 4e08a12 del gennaio 2017) non abbia questa opzione.
AdminBee

-qpidlist Selezionare per PID (modalità rapida). In questo modo vengono selezionati i processi i cui numeri ID processo compaiono nell'elenco pid. Con questa opzione ps legge le informazioni necessarie solo per i pid elencati nella pidlist e non applica regole di filtro aggiuntive. L'ordine dei pidi non è ordinato e preservato. In questa modalità non sono consentite ulteriori opzioni di selezione, ordinamento e elenchi di tipi di foresta. Identico a q e --quick-pid.
Kevdog777,

@ Kevdog777 potresti specificare su quali piattaforme è implementato? Non sembra essere un requisito POSIX . Inoltre, l'OP ha chiesto esplicitamente l'ambiente di busybox ...
AdminBee,

Scusate @AdminBee, ho scoperto che qui: man7.org/linux/man-pages/man1/ps.1.html poiché le persone non sapevano cosa -qsignificasse. Quindi dice solo Linux.
Kevdog777,
Utilizzando il nostro sito, riconosci di aver letto e compreso le nostre Informativa sui cookie e Informativa sulla privacy.
Licensed under cc by-sa 3.0 with attribution required.