Thread (informatica): differenze tra le versioni
Contenuto cancellato Contenuto aggiunto
Nessun oggetto della modifica |
m Annullate le modifiche di 79.61.187.216 (discussione), riportata alla versione precedente di Botcrux |
||
Riga 2:
[[File:Multithreaded process.svg|thumb|Un processo con due thread]]
Un '''thread''' o '''thread di esecuzione''', in [[informatica]], è una suddivisione di un [[processo (informatica)|processo]] in due o più filoni o sottoprocessi, che vengono [[esecuzione (informatica)|eseguiti]] [[concorrenza (informatica)|concorrentemente]] da un [[computer|sistema di elaborazione]] mono[[processore]] ([[multithreading]]) o [[multiprocessore]] o [[Multicore]].
== Definizioni ==
thread è composto essenzialmente da tre elementi: [[program counter]], valori nei [[registro (informatica)|registri]] e stack. Le risorse condivise con gli altri threads di uno stesso ''task'' sono essenzialmente la sezione di codice, la sezione di dati e le risorse del [[sistema operativo]].▼
▲Un thread è composto essenzialmente da tre elementi: [[program counter]], valori nei [[registro (informatica)|registri]] e stack. Le risorse condivise con gli altri threads di uno stesso ''task'' sono essenzialmente la sezione di codice, la sezione di dati e le risorse del [[sistema operativo]].
Nelle architetture a processore singolo, quando la [[CPU]] esegue alternativamente [[istruzione (informatica)|istruzioni]] di thread differenti, si parla di [[multithreading]] a divisione di tempo: la commutazione fra i thread avviene di solito tanto frequentemente da dare all'utente l'impressione che tutti i task siano eseguiti contemporaneamente. Nelle architetture multi-processore i thread vengono invece realmente eseguiti contemporaneamente cioè in parallelo, ciascuno su un distinto core.
|