Processo (informatica): differenze tra le versioni

Contenuto cancellato Contenuto aggiunto
Nessun oggetto della modifica
handle
Riga 7:
Un [[programma (informatica)|programma]] è costituito dal [[codice oggetto]] generato dalla compilazione del [[codice sorgente]], ed è normalmente salvato sotto forma di uno o più file. Esso è un'entità statica, che rimane immutata durante l'esecuzione.
 
Il processo è l'entità utilizzata dal [[sistema operativo]] per rappresentare una specifica esecuzione di un programma. In pratica un processo è un programma quando è in esecuzione. Esso è quindi un'entità dinamica, che dipende dai dati che vengono elaborati e dalle operazioni eseguite su di essi nel [[ciclo di fetch-execute]] da parte del [[processore]]. Il processo è quindi caratterizzato, oltre che dal [[codice eseguibile]], dall'insieme di tutte le informazioni che ne definiscono lo stato, come il contenuto della memoria indirizzata, i [[Thread (informatica)|thread]], i descrittori dei [[file]] e delle periferiche in uso.
 
L'uso dell'[[Astrazione (informatica)|astrazione]] dall'hardware è necessario al sistema operativo per realizzare la [[multiprogrammazione]].
Riga 57:
L'insieme di tali informazioni è raccolto o indicizzato da una struttura, unica per ogni processo, detta '''[[process control block]]''' (abbreviata in '''PCB'''). A loro volta, tutti i PCB sono elencati in una struttura detta '''process table'''.
 
Se il sistema operativo gestisce i thread, anche ciascun thread è identificato da un numero, detto '''TID''' ('''T'''hread '''ID'''entifier) oppure "thread handle". Un handle ('''maniglia''') è un riferimento codificato che consente ad un thread di accedere alle entità (oggetti) del sistema operativo.
 
Ad un thread sono associate le seguenti [[struttura dati|strutture dati]]: