GNU/Linux >> Linux Esercitazione >  >> Linux

Come controllare l'utilizzo della memoria del processo con il comando pmap di Linux

Il comando pmap di Linux visualizza la mappa di utilizzo della memoria di uno o più processi. Pmap riporta informazioni sullo spazio degli indirizzi o sulla mappa di utilizzo della memoria di un processo.

Pmap è in realtà un comando del sistema operativo Sun e Linux supporta solo un numero molto limitato di funzionalità. Ma è molto utile per trovare lo spazio di indirizzi completo di un processo. Per controllare l'utilizzo della memoria del processo abbiamo bisogno del PID o dell'ID processo univoco del processo in esecuzione, possiamo ottenere il PID da /proc o comandi regolari come top o ps.

In precedenza abbiamo parlato del controllo della memoria di processo utilizzando ps e il comando top, in questo tutorial insegnerò come utilizzare il comando pmap.

Sintassi di utilizzo

Controlliamo la sintassi di base del comando pmap.

# pmap PID

o

# pmap [options] PID

Nell'output, mostra l'indirizzo totale, kbyte, modalità e mappatura.

Opzioni

-x extended Show the extended format.
-d device Show the device format.
-q quiet Do not display some header/footer lines.
-V show version Displays version of program.

1) Mappa di utilizzo della memoria del singolo processo

Per verificare l'utilizzo della memoria di un singolo processo, utilizzare il comando map seguito dal numero PID.

Esaminiamo un esempio di pmap:

# pmap 1013
1013: /usr/sbin/sshd
00110000 1480K r-x-- /usr/lib/libcrypto.so.1.0.0
00282000 80K rw--- /usr/lib/libcrypto.so.1.0.0
00296000 12K rw--- [ anon ]
00299000 36K r-x-- /lib/libkrb5support.so.0.1
002a2000 4K rw--- /lib/libkrb5support.so.0.1
00739000 4K rw--- /lib/libresolv-2.12.so
0073a000 8K rw--- [ anon ]
00825000 120K r-x-- /lib/ld-2.12.so
00843000 4K r---- /lib/ld-2.12.so
00844000 4K rw--- /lib/ld-2.12.so
0090d000 32K r-x-- /lib/libwrap.so.0.7.6
00915000 4K rw--- /lib/libwrap.so.0.7.6
00948000 484K r-x-- /usr/sbin/sshd
009c1000 8K rw--- /usr/sbin/sshd
009c3000 20K rw--- [ anon ]
009e0000 92K r-x-- /lib/libpthread-2.12.so
009f7000 4K r---- /lib/libpthread-2.12.so

total 8232K

2) Mappa di utilizzo della memoria di più processi

Possiamo controllare la mappa della memoria di più processi inserendo più PID. Per questo aggiungi più PID con spazio aggiuntivo.

# pmap 1013 1217 1118

3) Mappa di memoria estesa su un processo

Per stampare informazioni sulla memoria estesa di un processo, utilizzare -x opzione. Qui Indirizzo, Kbyte, Dirty, RSS, modalità e mappatura contengono informazioni come di seguito:

Campi del formato estesi e del dispositivo

Address: start address of map
Kbytes: size of map in kilobytes
RSS: resident set size in kilobytes
Dirty: dirty pages (both shared and private) in kilobytes
Mode: permissions on map: read, write, execute, shared, private (copy on write)
Mapping: file backing the map, or '[ anon ]' for allocated memory, or '[ stack ]' for the program stack
Offset: offset into the file
Device: device name (major:minor)
# pmap -x 1013
1013: /usr/sbin/sshd
Address Kbytes RSS Dirty Mode Mapping
00110000 1480 92 0 r-x-- libcrypto.so.1.0.0
00282000 80 80 80 rw--- libcrypto.so.1.0.0
00296000 12 8 4 rw--- [ anon ]
00299000 36 0 0 r-x-- libkrb5support.so.0.1
002a2000 4 4 4 rw--- libkrb5support.so.0.1
002a3000 16 0 0 r-x-- libplc4.so
002a7000 4 4 4 rw--- libplc4.so
002ab000 88 4 0 r-x-- libaudit.so.1.0.0
002c1000 4 4 4 r---- libaudit.so.1.0.0
002c2000 4 4 4 rw--- libaudit.so.1.0.0
002c3000 216 4 0 r-x-- libgssapi_krb5.so.2.2
002f9000 4 4 4 rw--- libgssapi_krb5.so.2.2
002fa000 808 4 0 r-x-- libkrb5.so.3.3
003c4000 24 24 24 rw--- libkrb5.so.3.3
003ca000 152 4 0 r-x-- libk5crypto.so.3.1
003f0000 4 4 4 rw--- libk5crypto.so.3.1
003f1000 92 0 0 r-x-- libnssutil3.so
00408000 12 12 12 rw--- libnssutil3.so
0040b000 12 0 0 r-x-- libplds4.so
0040e000 4 4 4 rw--- libplds4.so

-------- ------- ------- ------- -------
total kB 8232 - - -

Conclusione

In questo tutorial impariamo come utilizzare il comando pmap per controllare le informazioni sulla memoria processi singoli e multipli. Se hai domande o feedback, sentiti libero di lasciare un commento.


Linux
  1. Come controllare la dimensione della RAM nella riga di comando di Linux in Gb

  2. Come monitorare l'utilizzo della rete con nload in Linux?

  3. Come controllare l'utilizzo della memoria in un server basato su Linux

  4. Come controllare la dimensione totale della RAM e l'utilizzo della memoria in Linux

  5. Come controllare la dimensione dell'heap per un processo su Linux

Comando gratuito Linux (controlla l'utilizzo della memoria)

Come controllare la versione del sistema operativo con la riga di comando di Linux

Come KILL un processo su Linux

Come controllare l'utilizzo della memoria in Linux? Usa questi 5 comandi

Come controllare l'utilizzo di Swap Live tramite il comando "top" in Linux

Come controllare i parametri del server VPS con il comando Linux