Table des matières:
- Définition - Que signifie la programmation prioritaire?
- Techopedia explique la planification prioritaire
Définition - Que signifie la programmation prioritaire?
L'ordonnancement prioritaire est une méthode d'ordonnancement des processus basée sur la priorité. Dans cette méthode, le planificateur choisit les tâches à travailler en fonction de la priorité, qui est différente des autres types de planification, par exemple, un simple tourniquet.
L'ordonnancement des priorités implique l'attribution de priorités à chaque processus, et les processus avec des priorités plus élevées sont exécutés en premier, tandis que les tâches avec des priorités égales sont exécutées sur la base du premier arrivé, premier servi (FCFS) ou round robin. Un exemple d'algorithme d'ordonnancement à priorité générale est l'algorithme SJF (le plus court travail en premier).
Techopedia explique la planification prioritaire
Les priorités peuvent être dynamiques ou statiques. Les priorités statiques sont allouées lors de la création, tandis que les priorités dynamiques sont attribuées en fonction du comportement des processus dans le système. Pour illustrer, le planificateur pourrait favoriser les tâches intensives d'entrée / sortie (E / S), ce qui permet d'émettre des demandes coûteuses dès que possible.
Les priorités peuvent être définies en interne ou en externe. Les priorités définies en interne utilisent une certaine quantité mesurable pour calculer la priorité d'un processus donné. En revanche, les priorités externes sont définies en utilisant des critères au-delà du système d'exploitation (OS), qui peuvent inclure l'importance du processus, le type ainsi que la somme des ressources utilisées pour l'utilisation de l'ordinateur, les préférences des utilisateurs, le commerce et d'autres facteurs comme la politique, etc.
La planification prioritaire peut être l'une des suivantes:
- Préemptif: ce type de planification peut préempter l'unité centrale (CPU) dans le cas où la priorité du processus fraîchement arrivé est supérieure à celles des processus existants.
- Non préemptif: ce type d'algorithme de planification place simplement le nouveau processus en haut de la file d'attente prête.
Le blocage indéfini, autrement appelé famine, est l'un des problèmes majeurs concernant les algorithmes d'ordonnancement prioritaire. Il s'agit d'un état dans lequel un processus est prêt à être exécuté, mais fait face à une longue attente avant d'être affecté à la CPU.
Il est souvent possible qu'un algorithme d'ordonnancement prioritaire fasse attendre indéfiniment un processus de faible priorité. Par exemple, dans un système intensément chargé, s'il existe un certain nombre de processus de priorité plus élevée, les processus de faible priorité peuvent ne jamais obtenir le CPU pour exécution.
Un remède à la famine est le vieillissement, qui est une technique utilisée pour augmenter progressivement la priorité des processus qui attendent de longues périodes dans le système.
