Techniques de fabrication avancées
Le rôle des algorithmes de calendrier : comparer Fcfs, Sjf, et Robin rond avec les calculs
Table of Contents
Les algorithmes de planification sont essentiels dans les systèmes d'exploitation pour gérer efficacement l'exécution des processus. Ils déterminent l'ordre dans lequel les processus sont attribués temps CPU, impactant performance et réactivité du système. Cet article compare trois algorithmes communs: First-Venez, First-Served (FCFS), Shortest Job First (SJF) et Round Robin, avec des calculs pour illustrer leurs différences.
Premier arrivé, premier servi (FCFS)
Les processus de FCFS sont programmés dans l'ordre où ils arrivent. C'est simple mais peut conduire à de longs temps d'attente pour des processus plus courts, connus sous le nom d'effet de convoy.
Exemple : Les processus avec les temps d'éclatement 5, 3 et 8 arrivent séquentiellement. Le graphique Gantt montre l'ordre d'exécution et les calculs pour les temps d'attente et de retour.
Calculs:
- Processus 1: Temps d'attente = 0, Temps d'exécution = 5
- Processus 2: Temps d'attente = 5, temps de réponse = 8
- Processus 3: Temps d'attente = 8, Temps de remise = 16
Le plus court emploi d'abord (FJS)
SJF sélectionne le processus avec le plus petit temps de rupture suivant. Il minimise le temps d'attente moyen mais nécessite une connaissance préalable des durées du processus.
En utilisant les mêmes processus, SJF les planifie comme 3, 5, puis 8 unités, ce qui entraîne des temps d'attente différents.
Calculs:
- Processus 2: Temps d'attente = 0, Temps d'exécution = 3
- Processus 1: Temps d'attente = 3, Temps de remise = 8
- Processus 3: Temps d'attente = 8, Temps de remise = 16
Rond Robin Scheduling
La ronde Robin attribue à chaque processus une tranche de temps fixe ou quantique. Les processus sont cycliques jusqu'à la fin, favorisant l'équité et la réactivité.
En supposant un quantum de 2 unités, les processus sont programmés en cycles, et les calculs sont basés sur le temps total d'exécution et les périodes d'attente.
Voici des exemples de calculs pour les temps d'achèvement et d'attente du processus :
- Processus 1: Temps d'attente = 4, Temps de remise = 9
- Processus 2: Temps d'attente = 2, Temps de remise = 5
- Processus 3: Temps d'attente = 8, Temps de remise = 16