2.3. Processi

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

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. Quindi, tornando all'esempio del file un_file che abbiamo appena visto, un processo lanciato dall'utente darth 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...

Come avete appreso più sopra, uno dei parametri di ambiente di un processo sono i valori di UID e GID dell'utente che lo ha lanciato. Questo permette al sistema di sapere se le richieste che il processo effettua sono "legali", ovvero consentite.

Una conseguenza di 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 GNU/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 lavorano per client Windows tramite il software Samba (consultate il capitolo Samba del Manuale di riferimento).

Internamente il sistema identifica i processi, ancora una volta, con un numero univoco detto process ID, o PID. Inoltre, ciascun processo può ricevere dei segnali tramite i quali potete controllarlo, ma questo vale solo per i processi che voi stessi avete lanciato, e non per quelli di un altro utente (l'unica eccezione a questa regola è costituita, di nuovo, da root). Potete fermare un processo, "ucciderlo" se sta causando dei problemi, e così via. In uno dei prossimi capitoli imparerete come tenere traccia di un PID e inviargli dei segnali. Questo è utile per terminare o sospendere i processi che presentano dei problemi.


Tux on Star from MandrakeSoft Linux è un trademark registrato di Linus Torvalds. Tutti gli altri copyright e trademark appartengono ai rispettivi proprietari.
A meno che non sia specificato diversamente, tutto il contenuto di queste pagine e tutte le immagini sono Copyright MandrakeSoft S.A. e MandrakeSoft Inc. 2000.
http://www.linux-mandrake.com/