Gestire facilmente i processi del sistema con htop
Se si assiste ad un calo delle prestazioni o il sistema del computer si blocca improvvisamente, presto ci si pone la domanda se vi siano programmi o processi in background che utilizzano inutilmente le risorse e che sono quindi responsabili di un elevato sfruttamento del sistema. I task manager, conosciuti anche come gestione attività, permettono di raccogliere informazioni esaurienti sui processi attivi sul sistema e di rappresentarli graficamente, così da poter rispondere a questa domanda. Oltre a questa funzione di controllo, ce ne sono anche altre, indispensabili per gestire questi processi. Così non solo potete stabilire quali programmi e servizi sfruttino particolarmente il vostro sistema, ma potete anche, ad esempio, interromperli.
htop: la soluzione open source con la suddivisione in thread
I sistemi operativi comuni hanno già un task manager installato o offrono degli appositi comandi per mostrare e gestire i processi. Ci sono però anche programmi alternativi come htop, che spiccano per una migliore visualizzazione dei dati del processo e che sono essenzialmente più facili da usare. Originariamente sviluppato come task manager per Linux, il tool con licenza GNU svolge, tra gli altri, il compito del comando top, con il quale vengono mostrati i processi attivi sui sistemi UNIX. Inoltre, il terminale (la maschera di inserimento) è stata sostituita da un’interfaccia testuale sulla base della libreria scritta in C, ncurses. Così si può utilizzare htop anche con la tastiera, senza che debbano essere inseriti comandi complicati. Il task manager, rilasciato nel 2004 da Hisham Muhammad e da allora costantemente aggiornato, non mostra solo i processi attivi, ma anche i singoli thread. Queste linee di esecuzione forniscono una descrizione più dettagliata dei rispettivi processi e consentono perciò una valutazione ancora più esatta. Per htop esistono alcuni tasti di scelta rapida e, se avviato in un ambiente desktop, il task manager può anche essere utilizzato con il mouse. Infatti, usando la nuova libreria ncurses, si può ad esempio scorrere con la rotellina del mouse tra i vari processi. Oltre che sulle distribuzioni Linux, come Ubuntu, il programma è utilizzabile a partire dalla sua ultima versione anche nei derivati di Unix, cioè FreeBSD, OpenBSD e Mac OS X.
Com’è strutturato il task manager per Linux e gli altri sistemi operativi
L’interfaccia di htop si divide in tre sezioni:
- Righe di intestazione
- Parte principale
- Righe di piè di pagina
Le righe di intestazione, divise in due parti, presentano solitamente nella parte di sinistra la percentuale di utilizzo dei diversi core del processore, così come lo sfruttamento della RAM (“mem”) e del file di paging (“Swp”) in megabyte (MB), mentre la parte destra dà informazioni sul numero dei task attivi e dei thread, sullo stato delle batterie del sistema, sul tempo di attività del sistema (uptime) e sul carico medio del sistema (“Load average”), che viene indicato solitamente nei tre valori tipici. Le righe di intestazione possono essere configurate liberamente e, ad esempio, è possibile decidere di far visualizzare al posto dello sfruttamento dei singoli core del processore il valore medio.
La parte principale elenca tutti i processi attivi, dove vengono indicati i seguenti valori:
PID | ID del processo |
---|---|
USER | Utente del processo |
PRI | Priorità del processo |
NI | Valore nice del processo (responsabile anche per la gestione delle priorità) |
VIRT | Memoria virtuale richiesta |
RES | Memoria fissa richiesta (collegata alla RAM) |
SHR | Memoria condivisa con altri processi |
S | Stato del processo; i valori usati sono ad esempio “Z“ per zombied (terminato) o “R“ per running (in esecuzione) |
CPU% | Tempo del processore richiesto in percentuale |
MEM% | Uso della memoria in percentuale |
TIME+ | Tempo del processore richiesto in ore, minuti e secondi |
Command | Comando o programma, che si nasconde dietro al processo, comprensivo dei singoli thread |
Le righe del piè di pagina mettono a disposizione diversi pulsanti che possono essere scelti tramite click del mouse o i tasti funzione (da F1 a F10).
htop: tasti funzione e altri tasti di scelta rapida
I pulsanti nominati prima delle righe del piè di pagina sono gli strumenti di base per utilizzare htop, mentre le restanti parti del tool si concentrano esclusivamente nell’elenco dei processi e delle statistiche, indipendentemente che lavoriate con il mouse o con la tastiera. Se decidete di utilizzare la tastiera, avete però a disposizione tutta una serie di utili tasti di scelta rapida che vanno ben oltre le possibilità offerte dai tasti funzione presentati e agevolano notevolmente il lavoro con il task manager. Di seguito vi spieghiamo cosa permettano di fare i tasti funzione e tutti gli altri comandi e tasti di scelta rapida:
Tasto o combinazione di tasti | Alternative | Funzione |
---|---|---|
[F1] | [?] o [h] | Mostra il menu aiuto |
[F2] | [Shift] + [s] | Apre il menu di configurazione |
[F3] | [/] | Apre la ricerca dei processi |
[F4] | [\] | Filtra i processi per nome |
[F5] | [t] | Attiva o disattiva la visualizzazione ad albero dei processi |
[F6] | [>] | Apre il menu di selezione |
[F7] | ] | Diminuisce il valore nice del processo selezionato |
[F8] | [ | Aumenta il valore nice del processo selezionato |
[F9] | [k] | Termina il processo selezionato |
[F10] | [q] o [Strg] + [c] | Termina htop |
[Barra spaziatrice] | Evidenzia il/i processo/i selezionato/i | |
[Shift] + [u] | Annulla gli elementi evidenziati | |
[Shift] + [p] | Ordina i processi in base all’uso della CPU (CPU%) | |
[Shift] + [m] | Ordina i processi in base all’uso della RAM (MEM%) | |
[Shift] + [t] | Ordina i processi in base al tempo del processore richiesto (TIME+) | |
[u] | Consente di selezionare un utente preciso | |
[Shift] + [k] | Nasconde i thread del kernel (orientato al sistema) | |
[Shift] + [h] | Nasconde i thread dell’utente (orientato all’applicazione) | |
[Shift] + [f] | Fa in modo che il cursore segua il processo selezionato |
Come installare htop
Com’è spesso il caso con i programmi open source, potete installare htop per mezzo di file sorgente o di file binari e del gestore di pacchetti presente nella vostra distribuzione. Per prima cosa scaricate e installate il programma con i seguenti comandi:
$ wget https://hisham.hm/htop/releases/2.0.1/htop-2.0.1.tar.gz
$ tar -xzvf htop-2.0.1.tar.gz
$ cd htop-2.0.1./
$ ./configure
$ make
# make install
Se invece preferite installarlo usando la versione con il gestore dei pacchetti, dovreste assicurarvi che nella vostra distribuzione sia contenuta la versione più recente di htop. Se così fosse, procedete poi con il classico metodo di installazione per il vostro sistema. Ad esempio su Ubuntu il task manager si configura dando il seguente comando:
sudo apt-get install htop
Conclusione: un task manager auto esplicativo e intuitivo
htop prende ad esempio il classico comando Unix top e si contraddistingue soprattutto tramite un’interfaccia testuale basata su ncurses. Così i singoli processi e thread non vengono solo presentati in una veste grafica più accattivante, ma l’utilizzo con il mouse o la tastiera risulta essenzialmente più intuitivo rispetto ai semplici tool a riga di comando. Il pratico uso dei tasti funzione e degli altri tasti di scelta rapida semplificano ulteriormente la navigazione e la configurazione, indipendentemente dal fatto che si terminino i processi o che debbano essere modificate le priorità. Oltre al famoso top, in genere già presente sui sistemi, alternative valide per gli esperti amministratori sono il task manager atop e lo strumento multipiattaforma Glances.