Tecniche di fabbricazione avanzate
Il ruolo degli Algoritmi Scheduling: Fcfs comparati, Sjf e Robin rotonda con le Calcolazioni
Table of Contents
Gli algoritmi di Scheduling sono essenziali nei sistemi operativi per gestire l'esecuzione dei processi in modo efficiente. Determinano l'ordine in cui i processi vengono assegnati tempo della CPU, impatto delle prestazioni del sistema e reattività. Questo articolo confronta tre algoritmi comuni: First-Come, First-Served (FCFS), Shortest Job First (SJF), e Round Robin, con calcoli per illustrare le loro differenze.
Primo, primo-served (FCFS)
FCFS pianifica i processi nell'ordine che arrivano, ma può portare a lunghi tempi di attesa per processi più brevi, conosciuti come "effetto favorevole".
Esempio: Processi con tempi di scoppio 5, 3 e 8 arrivano sequenziali. Il grafico Gantt mostra l'ordine di esecuzione e calcoli per tempi di attesa e turnaround.
Calcoli:
- Processo 1: Tempo di attesa = 0, Tempo di svolta = 5
- Processo 2: Tempo di attesa = 5, Tempo di svolta = 8
- Processo 3: Tempo di attesa = 8, Tempo di svolta = 16
Lavoro più breve prima (SJF)
SJF seleziona il processo con il più piccolo tempo di scoppio successivo, riducendo al minimo il tempo di attesa medio ma richiede la conoscenza delle durate di processo in anticipo.
Utilizzando gli stessi processi, SJF li pianifica come 3, 5, poi 8 unità, portando a diversi tempi di attesa.
Calcoli:
- Processo 2: Tempo di attesa = 0, Tempo di svolta = 3
- Processo 1: Tempo di attesa = 3, Tempo di rotazione = 8
- Processo 3: Tempo di attesa = 8, Tempo di svolta = 16
Rotondo Robin Scheduling
Il Round Robin assegna ad ogni processo una fetta di tempo fissa o quantistica. I processi vengono ciclizzati fino al completamento, promuovendo l'equità e la reattività.
Assumendo un quantismo di 2 unità, i processi sono programmati in cicli, e i calcoli si basano su tempo di esecuzione totale e periodi di attesa.
Esempio di calcoli per i tempi di completamento del processo e i tempi di attesa sono i seguenti:
- Processo 1: Tempo di attesa = 4, Tempo di svolta = 9
- Processo 2: Tempo di attesa = 2, Tempo di svolta = 5
- Processo 3: Tempo di attesa = 8, Tempo di svolta = 16