Algorithme de planification FCFS : qu'est-ce que c'est, exemple de programme

Qu'est-ce que la méthode du premier arrivé, premier servi ?

Premier arrivé, premier servi (FCFS) est un algorithme de planification du système d'exploitation qui exécute automatiquement les requêtes et les processus en file d'attente par ordre d'arrivée. Il s’agit de l’algorithme de planification CPU le plus simple et le plus simple. Dans ce type d'algorithme, les processus qui demandent le CPU en premier obtiennent en premier l'allocation de CPU. Ceci est géré avec une file d'attente FIFO. La forme complète du FCFS est le premier arrivé, premier servi.

Lorsque le processus entre dans la file d'attente prête, son PCB (Process Control Block) est lié à la queue de la file d'attente et, lorsque le CPU devient libre, il doit être affecté au processus au début de la file d'attente.

Caractéristiques de la méthode FCFS

  • Il prend en charge l'algorithme de planification non préemptif et préemptif.
  • Les travaux sont toujours exécutés selon le principe du premier arrivé, premier servi.
  • Il est facile à mettre en œuvre et à utiliser.
  • Cette méthode est peu performante et le temps d’attente général est assez élevé.

Exemple de planification FCFS

Un exemple concret de la méthode FCFS consiste à acheter un billet de cinéma au guichet. Dans cet algorithme de planification, une personne est servie selon le mode de file d'attente. La personne qui arrive en premier dans la file d'attente achète d'abord le billet, puis le suivant. Cela continuera jusqu'à ce que la dernière personne dans la file d'attente achète le billet. En utilisant cet algorithme, le processus CPU fonctionne de la même manière.

Comment fonctionne le FCFS ? Calcul du temps d'attente moyen

Voici un exemple de cinq processus arrivant à des moments différents. Chaque processus a un temps de rafale différent.

Processus Temps de rafale Heure d'arrivée
P1 6 2
P2 2 5
P3 8 1
P4 3 0
P5 4 4

À l’aide de l’algorithme de planification FCFS, ces processus sont gérés comme suit.

Étape 1) Le processus commence par P4 qui a une heure d'arrivée 0

Travaux FCFS

Étape 2) Au temps = 1, P3 arrive. P4 est toujours en cours d'exécution. Par conséquent, P3 est conservé dans une file d’attente.

Processus Temps de rafale Heure d'arrivée
P1 6 2
P2 2 5
P3 8 1
P4 3 0
P5 4 4

Travaux FCFS

Étape 3) Au temps = 2, arrive P1 qui est conservé dans la file d'attente.

Processus Temps de rafale Heure d'arrivée
P1 6 2
P2 2 5
P3 8 1
P4 3 0
P5 4 4

Travaux FCFS

Étape 4) Au temps = 3, le processus P4 termine son exécution.

Travaux FCFS

Étape 5) Au temps = 4, P3, qui est le premier dans la file d'attente, démarre l'exécution.

Processus Temps de rafale Heure d'arrivée
P1 6 2
P2 2 5
P3 8 1
P4 3 0
P5 4 4

Travaux FCFS

Étape 6) Au temps =5, P2 arrive, et il est maintenu dans une file d'attente.

Processus Temps de rafale Heure d'arrivée
P1 6 2
P2 2 5
P3 8 1
P4 3 0
P5 4 4

Travaux FCFS

Étape 7) Au temps 11, P3 termine son exécution.

Travaux FCFS

Étape 8) Au temps = 11, P1 démarre l'exécution. Il a un temps de rafale de 6. Il termine son exécution à l'intervalle de temps 17.

Travaux FCFS

Étape 9) Au temps = 17, P5 démarre l'exécution. Il a un temps de rafale de 4. Il termine son exécution à temps = 21

Travaux FCFS

Étape 10) Au temps = 21, P2 démarre l'exécution. Il a un temps de rafale de 2. Il termine son exécution à l'intervalle de temps 23.

Travaux FCFS

Étape 11) Calculons le temps d'attente moyen pour l'exemple ci-dessus.

Travaux FCFS

Waiting time = Start time - Arrival time

P4 = 0-0 = 0

P3 = 3-1 = 2

IP = 11-2 = 9

P5 = 17-4 = 13

P2= 21-5= 16

Temps d'attente moyen

Travaux FCFS
= 40 / 5 = 8

Avantages du FCFS

Voici les avantages/avantages de l’utilisation de l’algorithme de planification FCFS :

Inconvénients du FCFS

Voici les inconvénients/inconvénients de l’utilisation de l’algorithme de planification FCFS :

  • Il s'agit d'un algorithme de planification de processeur non préemptif. Ainsi, une fois le processus alloué au processeur, il ne le libérera jamais tant qu'il n'aura pas terminé son exécution.
  • Le temps d'attente moyen est élevé.
  • Les processus courts qui se trouvent en fin de file d'attente doivent attendre la fin du processus long en début de file.
  • Ce n’est pas une technique idéale pour les systèmes à temps partagé.
  • En raison de sa simplicité, FCFS n'est pas très efficace.

Résumé

  • Définition : FCFS est un algorithme de planification du système d'exploitation qui exécute automatiquement les requêtes et les processus en file d'attente par ordre d'arrivée.
  • Il prend en charge la planification non préemptive et préemptive
  • algorithme.
  • FCFS signifie Premier arrivé, premier servi
  • Un exemple concret de la méthode FCFS consiste à acheter un billet de cinéma au guichet.
  • C'est la forme la plus simple d'un algorithme de planification de CPU
  • Il s'agit d'un algorithme de planification de processeur non préemptif. Ainsi, une fois le processus alloué au processeur, il ne le libérera jamais tant qu'il n'aura pas terminé son exécution.