Process control block: differenze tra le versioni

Contenuto cancellato Contenuto aggiunto
CruccoBot (discussione | contributi)
m robot Aggiungo: fr
 
(45 versioni intermedie di 36 utenti non mostrate)
Riga 1:
{{F|sistema operativo|febbraio 2013}}
Il '''Process Control Block''' (o '''PCB''') di un [[Processo (informatica)| processo]] è una struttura dati del [[Kernel| nucleo]] del [[sistema operativo]] che contiene le informazioni essenziali per la gestione del processo.
{{S|sistema operativo}}
Il '''Processprocess Controlcontrol Blockblock''' (o '''PCB''' (in [[lingua italiana|italiano]]: ''blocco di controllo del processo'') è la struttura dati di un [[Processo (informatica)| processo]] è una struttura dati, del [[Kernel| nucleo]] del [[sistema operativo]], che contiene le informazioni essenziali per la gestione del processo stesso.
 
== Informazioni generali ==
Le informazioni contenute variano a seconda delle implementazioni, ma in generale sono presenti:
* [[Program counter]]
* Area per il salvataggio dei registri [[general purpose]], di indirizzamento
* Area salvataggio registro di stato
* Area di salvataggio per i flag
* Stato corrente di avanzamento del processo (Pronto, In Esecuzione, Bloccato)
* Identificatore unico del process
* Un puntatore al processo padre
* Puntatore ai processi figli se esistenti
* Livello di priorità
* Informazioni per il memory management(Gestione della memoria) (in particolare memoria virtuale) del processo
* Identificatore della CPU su cui è in esecuzione
* Informazioni per lo scheduling (gestione) del processo, come il tempo di run (esecuzione) o wait (attesa) accumulato o tempo stimato di esecuzione rimanente
* Informazioni di accounting di un processo
* Segnali che pendono
* Informazioni sullo stato di [[I/O]] del processo
* Registro nel quale è presente un puntatore alla page table
 
Durante la [[commutazione di contesto]], è necessario salvare in memoria centrale lo stato di esecuzione del processo che viene fermato. Queste informazioni vengono memorizzate proprio nel PCB del processo, e sarà sempre dal PCB che esse verranno lettericaricate quando si dovrà proseguire l'esecuzione.
* L'indirizzo logico della tabella delle pagine del processo
* L'indirizzo logico della coda pronti
* Il contenuto del [[program Counter]], prima dell'ultima [[commutazione di contesto]]
* Il contenuto dei registri generali della CPU, prima dell'ultima commutazione di contesto
* Informazioni utili per lo scheduling
 
== Informazioni superflue ==
Durante la commutazione di contesto, è necessario salvare in memoria centrale lo stato di esecuzione del processo che viene fermato. Queste informazioni vengono memorizzate proprio nel PCB del processo, e sarà sempre dal PCB che esse verranno lette quando si dovrà proseguire l'esecuzione.
Alcuni sistemi operativi inseriscono nel PCB di ogni processo delle informazioni superflue per la sua gestione:
* Lo stato del processo. Per gestire i processi in stato di pronto è sufficiente la coda pronti, mentre per quelli in stato di attesa l'informazione è contenuta nel canale di comunicazione relativo alla chiamata bloccante.
* [[Stack pointer]].
 
== Voci correlate ==
[[Categoria:Sistema operativo]]
* [[fr:ProcessThread Control Block]]
* [[en:Process control block (Unix)]]
 
{{portale|informatica}}
[[en:Process control block]]
 
[[fr:Process Control Block]]
[[Categoria:Sistema operativoKernel]]