logo

Algorithme de planification Round Robin

Dans ce didacticiel, nous allons découvrir l'algorithme de planification des processus CPU le plus efficace nommé Round Robin CPU Process Scheduling. Cet algorithme est très spécial car il va supprimer toutes les failles que nous avons détectées dans les précédents algorithmes de planification des processus CPU.

mot-clé statique en Java

Il y a beaucoup de popularité pour cette planification de processeur Round Robin car Round Robin ne fonctionne qu'en état pré-emptif. Cela le rend très fiable.

Abréviations importantes

  1. CPU - - - > Unité centrale de traitement
  2. AT - - -> Heure d'arrivée
  3. BT - - -> > Temps de rafale
  4. WT - - -> Temps d'attente
  5. TAT - - - > Délai d'exécution
  6. CT - - - > Temps d'achèvement
  7. FIFO - - - > Premier entré, premier sorti
  8. TQ - - -> Temps Quantique

Planification du processeur à tour de rôle

La planification du processeur Round Robin est l’algorithme de planification du processeur le plus important jamais utilisé dans l’histoire des algorithmes de planification du processeur. La planification du processeur Round Robin utilise Time Quantum (TQ). Le Time Quantum est quelque chose qui est supprimé du Burst Time et permet de terminer la partie du processus.

Le partage du temps est l'objectif principal de l'algorithme. Chaque étape de cet algorithme est réalisée de manière cyclique. Le système définit une tranche de temps spécifique, appelée quantum temporel.

Tout d’abord, les processus éligibles pour entrer dans la file d’attente prête entrent dans la file d’attente prête. Après être entré, le premier processus dans Ready Queue est exécuté pendant une période de temps Time Quantum. Une fois l'exécution terminée, le processus est supprimé de la file d'attente prête. Même maintenant, le processus prend un certain temps pour terminer son exécution, puis le processus est ajouté à la file d'attente prête.

La file d'attente Ready ne contient pas les processus déjà présents dans la file d'attente Ready. La file d'attente Ready est conçue de telle manière qu'elle ne contient pas de processus non uniques. En conservant les mêmes processus, la redondance des processus augmente.

Une fois l'exécution du processus terminée, la file d'attente prête ne prend pas le processus terminé en attente.

Algorithme de planification Round Robin

Avantages

Les avantages de la planification CPU Round Robin sont les suivants :

qui a créé l'école
  1. Une bonne quantité de CPU est allouée à chaque tâche.
  2. Comme cela ne dépend pas du temps de rafale, il peut véritablement être implémenté dans le système.
  3. Il n'est pas affecté par l'effet de convoi ou par le problème de famine comme cela s'est produit dans l'algorithme de planification du processeur Premier arrivé, premier servi.

Désavantages

Les inconvénients de la planification CPU Round Robin sont :

  1. Des temps de découpage faibles du système d’exploitation entraîneront une diminution de la puissance du processeur.
  2. L’approche de planification du processeur Round Robin prend plus de temps pour échanger les contextes.
  3. Le quantum temporel a un impact significatif sur ses performances.
  4. Les procédures ne peuvent pas avoir de priorités établies.

Exemples:

 S. No Process ID Arrival Time Burst Time _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ 1 P 1 0 7 2 P 2 1 4 3 P 3 2 15 4 P 4 3 11 5 P 5 4 20 6 P 6 4 9 

Supposons que le TQ quantique temporel = 5

File d'attente prête :

cadre de collections Java
 P1, P2, P3, P4, P5, P6, P1, P3, P4, P5, P6, P3, P4, P5 

Diagramme de Gantt:

Algorithme de planification Round Robin

Délai de réalisation moyen

 Average Completion Time = ( 31 +9 + 55 +56 +66 + 50 ) / 6 Average Completion Time = 267 / 6 Average Completion Time = 44.5 

Temps d'attente moyen

 Average Waiting Time = ( 5 + 26 + 5 + 42 + 42 + 37 ) / 6 Average Waiting Time = 157 / 6 Average Waiting Time = 26.16667 

Délai d'exécution moyen

chaîne en entier en Java
 Average Turn Around Time = ( 31 + 8 + 53 + 53 + 62 + 46 ) / 6 Average Turn Around Time = 253 / 6 Average Turn Around Time = 42.16667