logo

Planification du travail le plus court en premier (SJF)

Jusqu’à présent, nous planifiions les processus en fonction de leur heure d’arrivée (en planification FCFS). Cependant, l'algorithme de planification SJF planifie les processus en fonction de leur temps de rafale.

Dans la planification SJF, le processus avec le temps de rafale le plus court, parmi la liste des processus disponibles dans la file d'attente prête, sera ensuite planifié.

Cependant, il est très difficile de prédire le temps de rafale nécessaire à un processus et cet algorithme est donc très difficile à mettre en œuvre dans le système.

Avantages du SJF

  1. Débit maximal
  2. Délai d'attente et d'exécution moyen minimum

Inconvénients du SJF

  1. Peut souffrir du problème de la famine
  2. Cela n'est pas implémentable car l'heure exacte de Burst d'un processus ne peut pas être connue à l'avance.

Il existe différentes techniques permettant de déterminer le temps de rafale du processeur du processus. Nous en discuterons plus tard en détail.

conversion d'une chaîne en entier

Exemple

Dans l'exemple suivant, cinq tâches sont nommées P1, P2, P3, P4 et P5. Leur heure d'arrivée et leur heure de rafale sont indiquées dans le tableau ci-dessous.

ajouter une chaîne en Java
PID Heure d'arrivée Temps de rafale Le temps d'achèvement Temps de retournement Temps d'attente
1 1 7 8 7 0
2 3 3 13 dix 7
3 6 2 dix 4 2
4 7 dix 31 24 14
5 9 8 vingt-et-un 12 4

Depuis, No Process arrive au temps 0 donc ; il y aura un emplacement vide dans le diagramme de Gantt du temps 0 à 1 (l'heure à laquelle arrive le premier processus).

Selon l'algorithme, le système d'exploitation planifie le processus qui a le temps de rafale le plus bas parmi les processus disponibles dans la file d'attente prête.

Jusqu'à présent, nous n'avons qu'un seul processus dans la file d'attente prête, le planificateur le planifiera donc au processeur, quelle que soit son heure de rafale.

Ceci sera exécuté jusqu'à 8 unités de temps. D'ici là, trois processus supplémentaires sont arrivés dans la file d'attente prête, le planificateur choisira donc le processus avec le temps de rafale le plus court.

Parmi les processus indiqués dans le tableau, P3 sera exécuté ensuite car il a le temps de rafale le plus bas parmi tous les processus disponibles.

composants du robot

Voilà donc comment se déroulera la procédure travail le plus court en premier (SJF) algorithme de planification.

algorithme de planification SJF

Temps d'attente moyen = 27/5