Controlla l’utilizzo della memoria del processo con Linux Top Command
Generalmente esaminiamo l’utilizzo della memoria utilizzando il comando free che ci fornisce la memoria fisica totale e la memoria utilizzata dalla memoria totale. Ma il comando sopra è più utile per controllare l’utilizzo della memoria in Linux. Il comando free mostra solo l’utilizzo della memoria fisica, ma nella parte superiore mostra l’utilizzo della memoria virtuale per ogni processo. Mostra quanta memoria %
un processo consuma separatamente per ogni processo in esecuzione.
Il comando top visualizza un elenco delle attività che utilizzano la maggior parte della CPU e può anche ordinare le attività in base all’utilizzo della CPU, all’utilizzo della memoria e al tempo di esecuzione.
Ordinamento superiore per memoria
Apri la shell per eseguire il comando top, se eseguiamo top, mostrerà solo il nome del comando del processo in esecuzione, per vedere il comando completo che stiamo usando -c
opzione superiore.
$ top -c
Quindi premere m
ordinerà l’output con il più alto utilizzo di memoria in alto come segue:
top - 07:12:37 up 69 days, 4:33, 1 user, load average: 0.17, 0.10, 0.06
Tasks: 164 total, 1 running, 98 sleeping, 0 stopped, 0 zombie
%Cpu(s): 3.2 us, 0.5 sy, 0.0 ni, 96.0 id, 0.0 wa, 0.2 hi, 0.2 si, 0.0 st
KiB Mem : 29.3/4024444 [||||||||||||||||||||||||||||| ]
KiB Swap: 9.5/524284 [|||||||||| ]
PID USER PR NI VIRT RES SHR S %CPU %MEM TIME+ COMMAND
24426 www-data 20 0 449796 62568 45484 S 5.3 1.6 0:25.12 php-fpm: pool www
19577 www-data 20 0 448112 60288 44652 S 1.7 1.5 0:29.16 php-fpm: pool www
1233 root 20 0 1292628 41960 5188 S 0.3 1.0 580:00.20 /opt/site24x7/monagent/lib/Site24x7Agent
1928 root 20 0 1183840 43808 5368 S 0.3 1.1 56:50.99 /opt/site24x7/monagent/lib/applog/Site24x7Applog
7859 root 20 0 41856 3880 3200 R 0.3 0.1 0:00.07 top -c
1 root 20 0 37672 4604 3240 S 0.0 0.1 14:35.54 /sbin/init
2 root 20 0 0 0 0 S 0.0 0.0 0:00.78 [kthreadd]
3 root 0 -20 0 0 0 I 0.0 0.0 0:00.00 [rcu_gp]
4 root 0 -20 0 0 0 I 0.0 0.0 0:00.00 [rcu_par_gp]
Puoi anche eseguire il comando top come segue
$ top
Quindi premere SHIFT
+ m
dalla tastiera per ordinare in base all’utilizzo della memoria.
Utilizzo delle scorciatoie da tastiera
La moderna distribuzione Linux supporta il menu interattivo per l’utilizzo della memoria superiore da selezionare.
Segui i passaggi seguenti:
- la stampa
Shift+f
per accedere al menu interattivo. - continua
up
odown
freccia fino a%MEM
la scelta è evidenziata. - la stampa
s
selezionare%MEM
scelta. - la stampa
enter
per salvare la selezione ed uscire (q
) il menu interattivo.
Lo screenshot qui sotto mostra il menu interattivo Shift+f
:
Nella versione precedente di Linux, sarebbe leggermente diverso come segue:
Correre top
comando e premere shift
+ f
quindi il risultato verrà visualizzato come di seguito:
Current Sort Field: K for window 1:Def
Select sort field via field letter, type any other key to return
a: PID = Process Id
b: PPID = Parent Process Pid Note2:
c: RUSER = Real user name Field sorting uses internal values,
d: UID = User Id not those in column display. Thus,
e: USER = User Name the TTY & WCHAN fields will violate
f: GROUP = Group Name strict ASCII collating sequence.
g: TTY = Controlling Tty (shame on you if WCHAN is chosen)
h: PR = Priority
i: NI = Nice value
j: P = Last used cpu (SMP)
* K: %CPU = CPU usage
l: TIME = CPU Time
m: TIME+ = CPU Time, hundredths
n: %MEM = Memory usage (RES)
o: VIRT = Virtual Image (kb)
p: SWAP = Swapped size (kb)
q: RES = Resident size (kb)
r: CODE = Code size (kb)
s: DATA = Data+Stack size (kb)
t: SHR = Shared Mem size (kb)
u: nFLT = Page Fault count
v: nDRT = Dirty Pages count
w: S = Process Status
x: COMMAND = Command name/line
y: WCHAN = Sleeping in Function
z: Flags = Task Flags
Ora premi la lettera corrispondente %MEM
cioè “n” e quindi premere il tasto “INVIO”.
Utilizzando un unico comando
È possibile eseguire il seguente singolo comando dall’alto dal terminale per visualizzare l’utilizzo della memoria:
$ top -o %MEM
Conclusione
In questo tutorial abbiamo utilizzato il comando precedente per visualizzare l’utilizzo del processo attivo ordinato in base all’utilizzo della memoria. Linux ha anche comandi ps e pmap per controllare l’utilizzo della memoria.
Se hai domande o feedback, sentiti libero di lasciare un commento.