Pianificazione del processo: Scheduler a lungo, medio e breve termine

Sommario:

Anonim

Cos'è la pianificazione del processo?

La pianificazione dei processi è un'attività del sistema operativo che pianifica i processi di stati diversi come pronto, in attesa e in esecuzione.

La pianificazione del processo consente al sistema operativo di allocare un intervallo di tempo di esecuzione della CPU per ogni processo. Un altro motivo importante per utilizzare un sistema di pianificazione dei processi è che mantiene la CPU sempre occupata. Ciò consente di ottenere il tempo di risposta minimo per i programmi.

In questo tutorial sulla pianificazione del processo imparerai:

  • Cos'è la pianificazione del processo?
  • Code di pianificazione del processo
  • Modello di processo a due stati
  • Obiettivi di pianificazione
  • Tipo di pianificatori di processo
  • Scheduler a lungo termine
  • Scheduler a medio termine
  • Scheduler a breve termine
  • Differenza tra scheduler
  • Cos'è il cambio di contesto?

Code di pianificazione del processo

Le code di pianificazione dei processi aiutano a mantenere una coda distinta per ogni stato di processo e PCB. Tutti i processi con lo stesso stato di esecuzione vengono inseriti nella stessa coda. Pertanto, ogni volta che lo stato di un processo viene modificato, il suo PCB deve essere scollegato dalla sua coda esistente, che torna alla coda del nuovo stato.

Tre tipi di code del sistema operativo sono:

  1. Coda lavori : aiuta a memorizzare tutti i processi nel sistema.
  2. Coda pronta : questo tipo di coda ti aiuta a impostare ogni processo residente nella memoria principale, che è pronto e in attesa di essere eseguito.
  3. Code di dispositivi : è un processo bloccato a causa dell'assenza di un dispositivo I / O.

Nel diagramma sopra riportato,

  • Il rettangolo rappresenta una coda.
  • Il cerchio indica la risorsa
  • La freccia indica il flusso del processo.
  1. Ogni nuovo processo viene prima inserito nella coda Pronto, attende nella coda Pronto fino a quando non viene finalmente elaborato per l'esecuzione. Qui, il nuovo processo viene messo nella coda Pronto e attende fino a quando non viene selezionato per l'esecuzione o viene inviato.
  2. Uno dei processi è assegnato alla CPU ed è in esecuzione
  3. Il processo dovrebbe emettere una richiesta di I / O
  4. Quindi, dovrebbe essere posizionato nella coda I / O.
  5. Il processo dovrebbe creare un nuovo sottoprocesso
  6. Il processo dovrebbe attendere la sua conclusione.
  7. Dovrebbe essere rimosso con forza dalla CPU, di conseguenza interrompersi. Una volta completato l'interruzione, dovrebbe essere rimandata alla coda pronta.

Modello di processo a due stati

I modelli di processo a due stati sono:

  • In esecuzione
  • Non correndo

In esecuzione

Nel sistema operativo, ogni volta che viene creato un nuovo processo, viene inserito nel sistema, che dovrebbe essere in esecuzione.

Non correndo

I processi che non sono in esecuzione vengono tenuti in una coda, che attende il proprio turno di esecuzione. Ogni voce nella coda è un punto a un processo specifico.

Obiettivi di pianificazione

Ecco gli obiettivi importanti della pianificazione del processo

  • Massimizza il numero di utenti interattivi entro tempi di risposta accettabili.
  • Raggiungi un equilibrio tra risposta e utilizzo.
  • Evita il rinvio indefinito e applica le priorità.
  • Dovrebbe anche fare riferimento ai processi che contengono le risorse chiave.

Tipo di pianificatori di processo

Uno scheduler è un tipo di software di sistema che consente di gestire la pianificazione dei processi.

Esistono principalmente tre tipi di pianificatori di processo:

  1. Lungo termine
  2. A breve termine
  3. Medio termine

Scheduler a lungo termine

Lo scheduler a lungo termine è noto anche come job scheduler . Questo scheduler regola il programma e seleziona i processi dalla coda e li carica in memoria per l'esecuzione. Regola anche il grado di multiprogrammazione.

Tuttavia, l'obiettivo principale di questo tipo di scheduler è quello di offrire un mix equilibrato di lavori, come Processore, lavori di I / O., Che consente la gestione della multiprogrammazione.

Scheduler a medio termine

La pianificazione a medio termine è una parte importante dello scambio . Ti consente di gestire i processi di uscita scambiati. In questo scheduler, un processo in esecuzione può essere sospeso, il che effettua una richiesta di I / O.

Un processo in esecuzione può essere sospeso se effettua una richiesta di I / O. Un processo sospeso non può fare alcun progresso verso il completamento. Per rimuovere il processo dalla memoria e fare spazio per altri processi, il processo sospeso deve essere spostato nella memoria secondaria.

Scheduler a breve termine

La pianificazione a breve termine è anche nota come utilità di pianificazione della CPU . L'obiettivo principale di questo scheduler è aumentare le prestazioni del sistema in base ai criteri impostati. Questo ti aiuta a scegliere da un gruppo di processi pronti per essere eseguiti e assegna la CPU a uno di essi. Il dispatcher dà il controllo della CPU al processo selezionato dallo scheduler a breve termine.

Differenza tra scheduler

Vs a lungo termine Breve termine vs. Medio termine

Lungo termine A breve termine Medio termine
A lungo termine è anche noto come pianificatore di lavori A breve termine è noto anche come utilità di pianificazione della CPU Il medio termine è anche chiamato scheduler di scambio.
È assente o minimo in un sistema di condivisione del tempo. È insignificante nell'ordine di condivisione del tempo. Questo scheduler è un elemento dei sistemi di condivisione del tempo.
La velocità è inferiore rispetto allo scheduler a breve termine. La velocità è la più veloce rispetto allo scheduler a breve e medio termine. Offre velocità media.
Consentono di selezionare i processi dai carichi e di ripristinarli nella memoria Seleziona solo i processi che si trovano in uno stato pronto per l'esecuzione. Ti aiuta a rimandare il processo alla memoria.
Offre il pieno controllo Offre meno controllo Riduci il livello di multiprogrammazione.

Cos'è il cambio di contesto?

È un metodo per memorizzare / ripristinare lo stato di una CPU in PCB. In modo che l'esecuzione del processo possa essere ripresa dallo stesso punto in un secondo momento. Il metodo di cambio di contesto è importante per il sistema operativo multitasking.

Sommario:

  • La pianificazione dei processi è un'attività del sistema operativo che pianifica i processi di stati diversi come pronto, in attesa e in esecuzione.
  • I modelli di processo a due stati sono 1) in esecuzione e) non in esecuzione
  • La pianificazione del processo massimizza il numero di utenti interattivi, entro tempi di risposta accettabili.
  • Uno scheduler è un tipo di software di sistema che consente di gestire la pianificazione dei processi.
  • Tre tipi di scheduler sono 1) Lungo termine 2) Breve termine 3) Medio termine
  • Lo scheduler a lungo termine regola il programma e seleziona i processi dalla coda e li carica in memoria per l'esecuzione.
  • Lo scheduler a medio termine consente di gestire i processi di uscita scambiati.
  • L'obiettivo principale dello scheduler a breve termine è aumentare le prestazioni del sistema in base ai criteri stabiliti
  • Il lungo termine è anche noto come pianificazione dei lavori, mentre il breve termine è anche noto come pianificazione della CPU e il medio termine è anche chiamato scheduler di scambio.