Se si assiste ad un calo delle pre­sta­zio­ni o il sistema del computer si blocca im­prov­vi­sa­men­te, presto ci si pone la domanda se vi siano programmi o processi in back­ground che uti­liz­za­no inu­til­men­te le risorse e che sono quindi re­spon­sa­bi­li di un elevato sfrut­ta­men­to del sistema. I task manager, co­no­sciu­ti anche come gestione attività, per­met­to­no di rac­co­glie­re in­for­ma­zio­ni esau­rien­ti sui processi attivi sul sistema e di rap­pre­sen­tar­li gra­fi­ca­men­te, così da poter ri­spon­de­re a questa domanda. Oltre a questa funzione di controllo, ce ne sono anche altre, in­di­spen­sa­bi­li per gestire questi processi. Così non solo potete stabilire quali programmi e servizi sfruttino par­ti­co­lar­men­te il vostro sistema, ma potete anche, ad esempio, in­ter­rom­per­li.

htop: la soluzione open source con la sud­di­vi­sio­ne in thread

I sistemi operativi comuni hanno già un task manager in­stal­la­to o offrono degli appositi comandi per mostrare e gestire i processi. Ci sono però anche programmi al­ter­na­ti­vi come htop, che spiccano per una migliore vi­sua­liz­za­zio­ne dei dati del processo e che sono es­sen­zial­men­te più facili da usare. Ori­gi­na­ria­men­te svi­lup­pa­to 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 in­se­ri­men­to) è stata so­sti­tui­ta da un’in­ter­fac­cia testuale sulla base della libreria scritta in C, ncurses. Così si può uti­liz­za­re htop anche con la tastiera, senza che debbano essere inseriti comandi com­pli­ca­ti. Il task manager, ri­la­scia­to nel 2004 da Hisham Muhammad e da allora co­stan­te­men­te ag­gior­na­to, non mostra solo i processi attivi, ma anche i singoli thread. Queste linee di ese­cu­zio­ne for­ni­sco­no una de­scri­zio­ne più det­ta­glia­ta dei ri­spet­ti­vi processi e con­sen­to­no perciò una va­lu­ta­zio­ne ancora più esatta. Per htop esistono alcuni tasti di scelta rapida e, se avviato in un ambiente desktop, il task manager può anche essere uti­liz­za­to 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 di­stri­bu­zio­ni Linux, come Ubuntu, il programma è uti­liz­za­bi­le a partire dalla sua ultima versione anche nei derivati di Unix, cioè FreeBSD, OpenBSD e Mac OS X.

Com’è strut­tu­ra­to il task manager per Linux e gli altri sistemi operativi

L’in­ter­fac­cia di htop si divide in tre sezioni:

  • Righe di in­te­sta­zio­ne
  • Parte prin­ci­pa­le
  • Righe di piè di pagina

Le righe di in­te­sta­zio­ne, divise in due parti, pre­sen­ta­no so­li­ta­men­te nella parte di sinistra la per­cen­tua­le di utilizzo dei diversi core del pro­ces­so­re, così come lo sfrut­ta­men­to della RAM (“mem”) e del file di paging (“Swp”) in megabyte (MB), mentre la parte destra dà in­for­ma­zio­ni 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 so­li­ta­men­te nei tre valori tipici. Le righe di in­te­sta­zio­ne possono essere con­fi­gu­ra­te li­be­ra­men­te e, ad esempio, è possibile decidere di far vi­sua­liz­za­re al posto dello sfrut­ta­men­to dei singoli core del pro­ces­so­re il valore medio.

La parte prin­ci­pa­le 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 (re­spon­sa­bi­le 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 ese­cu­zio­ne)
CPU% Tempo del pro­ces­so­re richiesto in per­cen­tua­le
MEM% Uso della memoria in per­cen­tua­le
TIME+ Tempo del pro­ces­so­re richiesto in ore, minuti e secondi
Command Comando o programma, che si nasconde dietro al processo, com­pren­si­vo dei singoli thread

Le righe del piè di pagina mettono a di­spo­si­zio­ne 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 uti­liz­za­re htop, mentre le restanti parti del tool si con­cen­tra­no esclu­si­va­men­te nell’elenco dei processi e delle sta­ti­sti­che, in­di­pen­den­te­men­te che lavoriate con il mouse o con la tastiera. Se decidete di uti­liz­za­re la tastiera, avete però a di­spo­si­zio­ne tutta una serie di utili tasti di scelta rapida che vanno ben oltre le pos­si­bi­li­tà offerte dai tasti funzione pre­sen­ta­ti e agevolano no­te­vol­men­te il lavoro con il task manager. Di seguito vi spie­ghia­mo cosa per­met­ta­no di fare i tasti funzione e tutti gli altri comandi e tasti di scelta rapida:

Tasto o com­bi­na­zio­ne di tasti Al­ter­na­ti­ve Funzione
[F1] [?] o [h] Mostra il menu aiuto
[F2] [Shift] + [s] Apre il menu di con­fi­gu­ra­zio­ne
[F3] [/] Apre la ricerca dei processi
[F4] [\] Filtra i processi per nome
[F5] [t] Attiva o disattiva la vi­sua­liz­za­zio­ne ad albero dei processi
[F6] [>] Apre il menu di selezione
[F7] ] Di­mi­nui­sce il valore nice del processo se­le­zio­na­to
[F8] [ Aumenta il valore nice del processo se­le­zio­na­to
[F9] [k] Termina il processo se­le­zio­na­to
[F10] [q] o [Strg] + [c] Termina htop
[Barra spa­zia­tri­ce]   Evidenzia il/i processo/i se­le­zio­na­to/i
[Shift] + [u]   Annulla gli elementi evi­den­zia­ti
[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 pro­ces­so­re richiesto (TIME+)
[u]   Consente di se­le­zio­na­re un utente preciso
[Shift] + [k]   Nasconde i thread del kernel (orientato al sistema)
[Shift] + [h]   Nasconde i thread dell’utente (orientato all’ap­pli­ca­zio­ne)
[Shift] + [f]   Fa in modo che il cursore segua il processo se­le­zio­na­to

Come in­stal­la­re htop

Com’è spesso il caso con i programmi open source, potete in­stal­la­re htop per mezzo di file sorgente o di file binari e del gestore di pacchetti presente nella vostra di­stri­bu­zio­ne. Per prima cosa scaricate e in­stal­la­te 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 in­stal­lar­lo usando la versione con il gestore dei pacchetti, dovreste as­si­cu­rar­vi che nella vostra di­stri­bu­zio­ne sia contenuta la versione più recente di htop. Se così fosse, procedete poi con il classico metodo di in­stal­la­zio­ne per il vostro sistema. Ad esempio su Ubuntu il task manager si configura dando il seguente comando:

sudo apt-get install htop

Con­clu­sio­ne: un task manager auto espli­ca­ti­vo e intuitivo

htop prende ad esempio il classico comando Unix top e si con­trad­di­stin­gue so­prat­tut­to tramite un’in­ter­fac­cia testuale basata su ncurses. Così i singoli processi e thread non vengono solo pre­sen­ta­ti in una veste grafica più ac­cat­ti­van­te, ma l’utilizzo con il mouse o la tastiera risulta es­sen­zial­men­te più intuitivo rispetto ai semplici tool a riga di comando. Il pratico uso dei tasti funzione e degli altri tasti di scelta rapida sem­pli­fi­ca­no ul­te­rior­men­te la na­vi­ga­zio­ne e la con­fi­gu­ra­zio­ne, in­di­pen­den­te­men­te dal fatto che si terminino i processi o che debbano essere mo­di­fi­ca­te le priorità. Oltre al famoso top, in genere già presente sui sistemi, al­ter­na­ti­ve valide per gli esperti am­mi­ni­stra­to­ri sono il task manager atop e lo strumento mul­ti­piat­ta­for­ma Glances.

Vai al menu prin­ci­pa­le