L'un des algorithmes de planification préemptive les plus courants est l'algorithme SRTF (Shortest Remaining Time First), également connu sous le nom d'algorithme Shortest Job First (SJF) lorsqu'il est appliqué à la planification non préemptive.
Dans SRTF, le processeur est alloué au processus qui dispose du temps restant le plus court. Cela garantit que les travaux les plus courts sont terminés avant les travaux plus longs, ce qui peut améliorer le temps d'attente moyen et le temps d'exécution de tous les processus.
Voici comment fonctionne l'algorithme SRTF :
1. Le planificateur maintient une file d'attente de processus triés par ordre croissant de leur temps d'exécution restant.
2. Le processus en tête de la file d’attente se voit attribuer le processeur.
3. Si un nouveau processus arrive avec un temps d'exécution restant plus court que le processus en cours d'exécution, le processus en cours d'exécution est préempté et le nouveau processus se voit attribuer le processeur.
4. Ce processus se poursuit jusqu'à ce que tous les processus soient terminés.
L'algorithme SRTF est connu pour son équité et son efficacité. Cependant, cela peut être difficile à mettre en œuvre efficacement dans la pratique, car cela nécessite que le planificateur mette constamment à jour la file d’attente des processus.
|