next up previous contents
Next: Priorité en mode USER Up: L'ordonnancement Previous: L'ordonnancement   Contents

BSD

Le système de gestion des priorités agit sur un ensemble de files d'attente et utilise un algorithme de tourniquet.

La priorité de chaque processus est recalculée à chaque seconde par la primitive schedcpu. La priorité est une fonction décroissante du temps CPU utilisé. Quand 2 processus ont la même priorité, un algorithme de type FIFO les départage.

L'unité centrale est allouée dynamiquement au processus le plus prioritaire pour une tranche de temps (1 quantum, en général 10 ticks) au plus. Le processus est ensuite mis à la fin de sa file. Un top d'horloge correspond à un tick (généralement 10 ms).

Quand un processus se bloque sur une ressource, il ne rejoint pas la file des processus prêts. Un processus ne peut être préempté par un processus plus prioritaire que s'il effectue un appel système ou s'il a épuisé son quantum.

Les processus sont déplacés de file en file en fonction de leur priorité courante.



Subsections

Arnaud Revel
2001-11-26