Gestione dei processi nel sistema operativo: PCB in Operasistema di ting

Cos'è un processo?

Processo è l'esecuzione di un programma che esegue le azioni specificate in quel programma. Può essere definito come un'unità di esecuzione in cui viene eseguito un programma. Il sistema operativo consente di creare, pianificare e terminare i processi utilizzati dalla CPU. Un processo creato dal processo principale è chiamato processo figlio.

Le operazioni di processo possono essere facilmente controllate con l'aiuto del PCB (Process Control Block). Puoi considerarlo come il cervello del processo, che contiene tutte le informazioni cruciali relative all'elaborazione come ID processo, priorità, stato, registri della CPU, ecc.

Cos'è la gestione dei processi?

La gestione dei processi prevede varie attività come la creazione, la pianificazione, la conclusione dei processi e a blocco morto. Un processo è un programma in esecuzione, che è una parte importante dei moderni sistemi operativi. Il sistema operativo deve allocare risorse che consentono ai processi di condividere e scambiare informazioni. Protegge inoltre le risorse di ogni processo da altri metodi e consente la sincronizzazione tra i processi.

È compito del sistema operativo gestire tutti i processi in esecuzione del sistema. Gestisce le operazioni eseguendo attività come la pianificazione dei processi e l'allocazione delle risorse.

Processo Architectura

Architettura del processo Immagine
Architettura del processo Immagine

Ecco un Archidiagramma strutturale del processo

  • impilare: Lo Stack memorizza dati temporanei come parametri di funzione, indirizzi di ritorno e variabili locali.
  • Heap Alloca memoria, che può essere elaborata durante il tempo di esecuzione.
  • Data: Contiene la variabile.
  • Testo:
    La sezione testo include l'attività corrente, che è rappresentata dal valore del contatore del programma.

Blocchi di controllo del processo

PCB sta per Process Control Block. È una struttura dati mantenuta da Operating System per ogni processo. Il PCB deve essere identificato da un ID processo intero (PID). Ti aiuta a memorizzare tutte le informazioni necessarie per tenere traccia di tutti i processi in esecuzione.

È anche responsabile della memorizzazione del contenuto dei registri del processore. Questi vengono salvati quando il processo passa dallo stato di esecuzione e poi vi ritorna. Le informazioni vengono aggiornate rapidamente nel PCB dal sistema operativo non appena il processo effettua la transizione di stato.

Stati del processo

Stati del processo

Diagramma degli stati del processo

Uno stato di processo è una condizione del processo in un istante di tempo specifico. Definisce inoltre la posizione attuale del processo.

Ci sono principalmente sette fasi di un processo che sono:

  • Novità: il nuovo processo viene creato quando un programma specifico richiama dalla memoria secondaria/disco rigido alla memoria primaria/RAM a
  • Pronto: nello stato pronto, il processo dovrebbe essere caricato nella memoria primaria, che è pronta per l'esecuzione.
  • In attesa: il processo è in attesa dell'allocazione del tempo della CPU e di altre risorse per l'esecuzione.
  • In esecuzione: il processo è uno stato di esecuzione.
  • Bloccato: è un intervallo di tempo in cui un processo attende il completamento di un evento come le operazioni di I/O.
  • Sospeso: lo stato sospeso definisce il momento in cui un processo è pronto per l'esecuzione ma non è stato inserito nella coda di pronto dal sistema operativo.
  • Terminato: lo stato Terminato specifica l'ora in cui un processo viene terminato

Dopo aver completato ogni passaggio, tutte le risorse vengono utilizzate da un processo e la memoria diventa libera.

Blocco di controllo del processo (PCB)

Ogni processo è rappresentato nel sistema operativo da un blocco di controllo del processo, chiamato anche blocco di controllo del task.

Qui ci sono componenti importanti del PCB

Blocco di controllo del processo

Blocco di controllo del processo (PCB)
  • Stato del processo: Un processo può essere nuovo, pronto, in esecuzione, in attesa, ecc.
  • Contatore di programma: Il contatore del programma ti consente di conoscere l'indirizzo della prossima istruzione, che dovrebbe essere eseguita per quel processo.
  • Registri della CPU: Questo componente include accumulatori, registri indice e di uso generale e informazioni sul codice condizione.
  • Informazioni sulla pianificazione della CPU: Questo componente include una priorità di processo, puntatori per la pianificazione delle code e vari altri parametri di pianificazione.
  • Informazioni contabili e aziendali: Include la quantità di CPU e utilità temporali come il tempo reale utilizzato, i numeri di lavoro o processo, ecc.
  • Informazioni sulla gestione della memoria: Queste informazioni includono il valore dei registri base e limite, la pagina o le tabelle dei segmenti. Ciò dipende dal sistema di memoria utilizzato dal sistema operativo.
  • Informazioni sullo stato degli I/O: Questo blocco include un elenco di file aperti, l'elenco dei dispositivi I/O assegnati al processo, ecc.

Sommario

  • Un processo è definito come l'esecuzione di un programma che esegue le azioni specificate in quel programma.
  • La gestione dei processi prevede varie attività come la creazione, la pianificazione, la conclusione dei processi e un dead lock.
  • Gli elementi importanti dell'architettura del processo sono 1) Stack 2) Heap 3) Dati e 4) Testo
  • Il PCB è una forma completa di blocco di controllo del processo. È una struttura dati mantenuta da Operating System per ogni processo
  • Uno stato di processo è una condizione del processo in un istante di tempo specifico.
  • Ogni processo è rappresentato nel sistema operativo da un blocco di controllo del processo, chiamato anche blocco di controllo del task.