KingDragonMan
Ominide
1 min. di lettura
Vota 4,7 / 5

Concetti Chiave

  • Un programma diventa un processo quando viene eseguito, e la sua creazione avviene su richiesta di un altro processo già esistente.
  • I processi formano una gerarchia ad albero con un processo principale, generalmente l'eseguibile init, avviato dal kernel.
  • Il kernel può avviare qualsiasi programma come processo principale, ma preferisce l'eseguibile /sbin/init per un sistema standard.
  • Il kernel gestisce una tabella dei processi per monitorare il loro stato e registrare varie informazioni come nome, ID e argomenti.
  • Vengono tracciati anche l'ID del processo genitore, l'ID utente e gruppo, e il dispositivo di comunicazione, se controllato da un terminale.
Il processo di elaborazione
Un programma singolo, nel momento in cui viene eseguito, è un processo. La nascita di un processo, cioè l'avvio di un programma, può avvenire solo tramite una richiesta da parte di un altro processo già esistente. Si forma quindi una sorta di gerarchia dei processi organizzata ad albero. Il processo principale (root) che genera tutti gli altri, è quello dell'eseguibile init che a sua volta è attivato direttamente dal kernel.
In linea di principio, il programma avviato dal kernel come processo principale, può essere qualunque cosa, anche una shell (tenendo conto, comunque, che il kernel predilige l'eseguibile /sbin/init), ma in tal caso si tratta di applicazioni specifiche e non di un sistema standard.
Qui si preferisce utilizzare il nome Init per identificare il processo principale, tenendo conto che questo si concretizza generalmente nell'eseguibile init.
Il kernel gestisce una tabella dei processi che serve a tenere traccia del loro stato. In particolare sono registrati i valori seguenti:

il nome dell'eseguibile in funzione;

gli eventuali argomenti passati all'eseguibile al momento dell'avvio attraverso la riga di comando;

il numero di identificazione del processo;

il numero di identificazione del processo che ha generato quello a cui si fa riferimento;

il nome del dispositivo di comunicazione se il processo è controllato da un terminale;

il numero di identificazione dell'utente;

il numero di identificazione del gruppo;

Domande e risposte

Hai bisogno di aiuto?
Chiedi alla community