• Diventa Fan!
  • Seguici Twitter
  • Seguici su Google+

[Linux/Ubuntu] TOP: un comando… un perchè! Ecco come interpretarlo

Scritto in Backtrack, Debian, Fedora, Kubuntu, Linux, Slackware, Software, Ubuntu, Xubuntu - Da Jessica Lambiase - martedì 1 febbraio 2011 - 0 Commenti

Lo so, lo so, non ditemelo… non è un comando che si utilizza tutti i giorni, è vero, ma l’utilità del comando TOP è qualcosa di indefinibile, visto che vi permette di avere in un sol colpo più informazioni sui processi in esecuzione di quanti voi possiate immaginare.

Per default il comando TOP vi permette di visualizzare i processi più “pesanti” del vostro sistema, associando a questi diciture e numeretti strani che non sono affatto immediati. Sono qui proprio per questo: vediamo insieme cosa significa quella roba che top da in output!

Apriamo immediatamente un terminale, diamo il comando

top

e vediamo che, a terminale, dovrebbe apparire qualcosa del tutto simile all’immagine qui sotto:

Ok, cosa significa? Partiamo dall’alto.

  • top – 02:12:26 –> l’ora corrente
  • up 1 day, 2.40 –> da quanto tempo il sistema è acceso (1 giorno, 2 ore e 40 minuti)
  • 2 users –> quanti utenti sono presenti e attivi nel sistema
  • load average: 0.75, 1.08, 1.26 –> il carico medio del sistema (secondo la metrica del kernel)
  • Tasks: –> alcune informazioni sui processi correnti (quanti attivi, quanti in attesa, quanti fermati e quanti “zombie” – processi terminati in maniera anomala)
  • Cpu(s) –> alcune informazioni sul lavoro corrente del processore
  • Mem e Swap –> lo stato di utilizzo della memoria fisica e della memoria di swap ( troverete la memoria totale, usata, libera e la quantità di buffers allocati)

Immediatamente sotto le informazioni precedenti troveremo delle informazioni dettagliate riguardo i processi presenti nel sistema: scopriamo insieme cosa significa ciascuna voce presente.

  • PID: Process ID – il numeretto con cui il kernel identifica il processo
  • USER: Il nome dell’utente che ha mandato in esecuzione il processo
  • PR: La priorità dinamica del processo (qui una breve spiegazione di cosa è)
  • NI: Il valore di nice – o priorità di base – del processo (troverete nel link che vi ho segnalato sopra una breve spiegazione anche del nice)
  • VIRT: la “dimensione virtuale” del processo (dimensione effettiva del file in esecuzione + dimensione delle librerie in uso + dimensione delle aree di memoria allocate)
  • RES: la quantità di “memoria residente” - RAM – utilizzata dal processo
  • SHR: la quantità di “memoria condivisa” utilizzata dal processo (non è esatto utilizzare i termini “memoria condivisa”, in quanto in questo caso non parliamo di memoria fisica ma di oggetti in memoria condivisi.. un esempio potrebbero essere i semafori o i segmenti di memoria condivisi appartenenti alle SysVIPC)
  • S: lo stato del processo (Idle – in attesa, sWapped Out, Runnable – pronto per l’esecuzione, Sleeping – inattivo, Disk wait – in attesa di una operazione di I/O, Zombie – terminato in modo anomalo)
  • %CPU: la percentuale di CPU utilizzata dal processo
  • %MEM: la percentuale di RAM utilizzata dal processo
  • TIME+: da quanto tempo (in termini di CPU) il processo è in esecuzione
  • COMMAND: il nome del programma associato al processo

Spero questa piccola delucidazione vi sia utile, e a breve troverete una guida su come utilizzare in maniera efficiente il comando TOP. Stay tuned!