Che cos'è la programmazione round-robin?
Il nome di questo algoritmo deriva dal principio round-robin, in cui ogni persona riceve una quota uguale di qualcosa a turno. È l'algoritmo di pianificazione più antico e semplice, utilizzato principalmente per il multitasking.
Nella pianificazione Round-robin, ogni attività pronta viene eseguita turno dopo turno solo in una coda ciclica per un periodo di tempo limitato. Questo algoritmo offre anche l'esecuzione senza fame dei processi.
In questo tutorial sul sistema operativo imparerai:
- Che cos'è la programmazione round-robin?
- Caratteristiche della schedulazione round-robin
- Esempio di pianificazione round-robin
- Vantaggio della schedulazione round-robin
- Svantaggi della schedulazione round-robin
- Peggiore latenza dei casi
Caratteristiche della schedulazione round-robin
Ecco le caratteristiche importanti della programmazione Round-Robin:
- Il round robin è un algoritmo preventivo
- La CPU viene spostata al processo successivo dopo un intervallo di tempo fisso, chiamato quanto di tempo / porzione di tempo.
- Il processo anticipato viene aggiunto alla fine della coda.
- Il round robin è un modello ibrido basato su un orologio
- L'intervallo di tempo dovrebbe essere minimo, assegnato a un'attività specifica che deve essere elaborata. Tuttavia, potrebbe differire da OS a OS.
- È un algoritmo in tempo reale che risponde all'evento entro un limite di tempo specifico.
- Il round robin è uno degli algoritmi più antichi, giusti e semplici.
- Metodo di pianificazione ampiamente utilizzato nei sistemi operativi tradizionali.
Esempio di pianificazione round-robin
Considera questi tre processi seguenti
Coda di elaborazione | Tempo di scoppio |
P1 | 4 |
P2 | 3 |
P3 | 5 |
Passaggio 1) L'esecuzione inizia con il processo P1, che ha un tempo di burst 4. Qui, ogni processo viene eseguito per 2 secondi. P2 e P3 sono ancora in coda di attesa.
Passaggio 2 ) All'ora = 2, P1 viene aggiunto alla fine della coda e P2 inizia l'esecuzione
Passaggio 3) All'ora = 4, P2 viene preceduto e aggiunto alla fine della coda. P3 inizia l'esecuzione.
Passaggio 4) All'ora = 6, P3 viene preceduto e aggiunto alla fine della coda. P1 inizia l'esecuzione.
Passaggio 5) Al tempo = 8, P1 ha un tempo di burst di 4. Ha completato l'esecuzione. P2 avvia l'esecuzione
Passaggio 6) P2 ha un tempo di burst di 3. È già stato eseguito per 2 intervalli. All'ora = 9, P2 completa l'esecuzione. Quindi, P3 inizia l'esecuzione fino al completamento.
Passaggio 7) Calcoliamo il tempo di attesa medio per l'esempio sopra.
Wait timeP1= 0+ 4= 4P2= 2+4= 6P3= 4+3= 7
Vantaggio della schedulazione round-robin
Di seguito sono riportati i vantaggi / vantaggi del metodo di pianificazione Round-robin:
- Non affronta i problemi della fame o dell'effetto convoglio.
- Tutti i lavori ottengono una giusta allocazione della CPU.
- Si occupa di tutto il processo senza alcuna priorità
- Se si conosce il numero totale di processi nella coda di esecuzione, è anche possibile ipotizzare il tempo di risposta nel caso peggiore per lo stesso processo.
- Questo metodo di pianificazione non dipende dal tempo di burst. Ecco perché è facilmente implementabile nel sistema.
- Una volta che un processo viene eseguito per un determinato periodo di tempo, il processo viene anticipato e un altro processo viene eseguito per quel determinato periodo di tempo.
- Consente al sistema operativo di utilizzare il metodo di commutazione del contesto per salvare gli stati dei processi interrotti.
- Offre le migliori prestazioni in termini di tempo medio di risposta.
Svantaggi della schedulazione round-robin
Di seguito sono riportati gli svantaggi / svantaggi dell'utilizzo della pianificazione Round-robin:
- Se il tempo di slicing del sistema operativo è basso, l'uscita del processore verrà ridotta.
- Questo metodo dedica più tempo al cambio di contesto
- Le sue prestazioni dipendono fortemente dal quantum temporale.
- Non è possibile impostare le priorità per i processi.
- La pianificazione round-robin non attribuisce una priorità speciale alle attività più importanti.
- Diminuisce la comprensione
- Un quantum temporale inferiore si traduce in un maggiore overhead del cambio di contesto nel sistema.
- Trovare un quanto temporale corretto è un compito abbastanza difficile in questo sistema.
Peggiore latenza dei casi
Questo termine viene utilizzato per indicare il tempo massimo impiegato per l'esecuzione di tutte le attività.
- dt = Indica il tempo di rilevamento quando un'attività viene inserita nell'elenco
- st = Indica il tempo di passaggio da un'attività all'altra
- et = Indica il tempo di esecuzione dell'attività
Formula:
Tworst = {(dti+ sti + eti ), + (dti+ sti + eti )2 +… + (dti+ sti + eti )N., + (dti+ sti + eti + eti) N} + tISRt,SR = sum of all execution times
Sommario:
- Il nome di questo algoritmo deriva dal principio round-robin, in cui ogni persona riceve una quota uguale di qualcosa a turno.
- Round robin è uno degli algoritmi più vecchi, più equi e più semplici e metodi di pianificazione ampiamente utilizzati nei sistemi operativi tradizionali.
- Il round robin è un algoritmo preventivo
- Il più grande vantaggio del metodo di pianificazione round-robin è che se si conosce il numero totale di processi nella coda di esecuzione, è anche possibile ipotizzare il tempo di risposta nel caso peggiore per lo stesso processo.
- Questo metodo dedica più tempo al cambio di contesto
- La latenza nel caso peggiore è un termine usato per indicare il tempo massimo impiegato per l'esecuzione di tutte le attività.