Français
Électronique industrielle

temps d'attente

Anglais: waiting time

La durée totale pendant laquelle un processus reste dans une file d'attente avant d'atteindre le CPU.

temps d'attente : délai d'attente avant l'exécution par le CPU

Dans un système d'exploitation multitâche, le temps d'attente est l'intervalle entre le moment où un processus entre dans la file d'attente des processus prêts et le moment où l'ordonnanceur du CPU lui attribue réellement des cycles de processeur. Pendant cette période, le processus est prêt à s'exécuter, son contexte est chargé en mémoire et ses instructions sont disponibles, mais le CPU est occupé à exécuter d'autres tâches. Ceci est distinct du temps d'exécution, qui est le temps que le processus passe réellement sur le CPU.

Le temps d'attente s'accumule dans les systèmes où de nombreux processus se disputent un seul CPU ou un nombre limité de cœurs. Dans le traitement par lots, un travail peut attendre des heures dans la file d'attente avant que l'ordonnanceur ne le sélectionne. Dans les systèmes temps réel, le temps d'attente est une contrainte critique : un processus critique pour la sécurité ne doit pas attendre si longtemps qu'il dépasse son délai. Dans les systèmes interactifs, un temps d'attente excessif entraîne un décalage visible ou une non-réactivité du point de vue de l'utilisateur.

Mesure et impact sur l'ordonnancement

Le temps d'attente est mesuré en millisecondes, secondes ou cycles CPU, selon le contexte. Le temps d'attente moyen pour tous les processus est une métrique de performance clé pour évaluer les algorithmes d'ordonnancement. Différents ordonnanceurs produisent des temps d'attente différents : le First Come First Served (FCCS) produit de longs temps d'attente moyens lorsque des tâches courtes sont en file d'attente derrière des tâches longues, tandis que des algorithmes comme le Shortest Job First (SJF) ou le Round Robin minimisent l'attente en priorisant les tâches courtes ou en alternant équitablement entre les concurrents.

Le temps d'attente n'est pas causé par des délais d'E/S, des défauts de page ou des appels système (ceux-ci sont généralement appelés temps de blocage ou temps de sommeil). Il résulte purement de l'arbitrage de l'ordonnanceur. Dans les systèmes multiprocesseurs, le temps d'attente peut être réduit en ayant des cœurs inactifs disponibles ou en équilibrant la charge entre les cœurs. Dans les systèmes avec des niveaux de priorité de threads, les threads à haute priorité connaissent des temps d'attente plus courts que ceux à faible priorité.

Les concepteurs de systèmes surveillent le temps d'attente à l'aide de profileurs de noyau et d'outils de traçage. Un temps d'attente excessif signale soit une surcharge du CPU, un mauvais réglage de l'ordonnanceur, soit des processus auxquels une classe de priorité incorrecte est attribuée. Dans les systèmes embarqués temps réel stricts, le temps d'attente est prédit et borné lors de la conception ; violer cette borne est une défaillance.

Sources

Entrée IG788415/09/2013

Autres termes : Électronique industrielle

Tout voir

Recevez le mot du jour

Un terme industriel chaque jour, avec le métier auquel il appartient et pourquoi il mérite d'être connu. Sans publicité.