Thread (informatica): differenze tra le versioni

Contenuto cancellato Contenuto aggiunto
Nessun oggetto della modifica
Riga 5:
La specifica implementazione dei thread e dei [[Processo (informatica)|processi]] dipende dal [[sistema operativo]], ma, in generale, si può dire che un thread è contenuto all'interno di un processo, e che diversi thread contenuti nello stesso processo condividono alcune risorse (lo spazio d'indirizzamento del processo), mentre processi differenti non condividono le loro risorse.
 
Un thread è composto principalmenteessenzialmente 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.