2.3. Processi

Un processo rappresenta un'istanza di un programma in esecuzione e il suo ambiente. Come per i file, qui citeremo solo le differenze più importanti; per una trattazione più approfondita di questo argomento, potete consultare il Manuale di riferimento.

La differenza più importante è, ancora una volta, legata al concetto di utente: ogni processo viene eseguito con i diritti dell'utente che lo ha lanciato. Il sistema identifica i processi in modo univoco utilizzando un numero per ciascun processo, che viene chiamato process ID, o PID. Grazie al PID il sistema sa, fra le altre cose, chi (ovvero quale utente) ha lanciato il processo in esecuzione: a questo punto deve soltanto controllare che quanto richiesto dal processo sia del tutto "legale". Quindi, tornando all'esempio del file un_file che abbiamo appena visto, un processo lanciato dall'utente tuxor potrà aprire questo file in modalità read-only (sola lettura), ma non in modalità read-write (lettura e scrittura), perché i permessi associati al file lo impediscono. Ancora una volta, root fa eccezione a questa regola...

Un beneficio dovuto a questa gestione dei processi è che GNU/Linux è praticamente immune ai virus. Per causare danni, i virus devono poter infettare dei file eseguibili. Come semplici utenti, normalmente voi non avete accesso ai file critici per il sistema, quindi il rischio è assai ridotto. A questo, aggiungete il fatto che i virus sono, in generale, poco diffusi nel mondo Unix. Fino a oggi sono stati individuati solo tre virus su Linux, e tutti erano praticamente innocui se attivati da un utente comune. C'è un solo utente che può danneggiare il sistema avviando questi virus, ed è, ancora una volta, root.

Esistono dei programmi anti-virus anche per GNU/Linux, ma servono solo per i file DOS/Windows... Questo perché si trovano sempre più spesso file server GNU/Linux che operano con client Windows tramite il software Samba.

Sotto Linux il controllo dei processi è semplice; un modo per controllarli consiste nell'usare i segnali: grazie ad essi, infatti, potete sospendere o terminare un processo, ad esempio, semplicemente inviandogli il segnale corrispondente. Questo vale solo per i processi che voi stessi avete lanciato, tuttavia, e non per quelli di un altro utente (l'unica eccezione a questa regola è costituita, di nuovo, da root). Nel capitolo Controllo dei processi imparerete come ottenere il PID di un processo e inviargli dei segnali.

 

 


Tux on Star from MandrakeSoft Linux è un marchio registrato di Linus Torvalds. Tutti gli altri marchi e copyright appartengono ai rispettivi proprietari.
Se non diversamente specificato, i diritti di tutto il contenuto di queste pagine e di tutte le immagini sono proprietà di MandrakeSoft S.A. e MandrakeSoft Inc. 2001.
http://www.mandrakelinux.com/