First in, first out

Un article de Wikipédia, l'encyclopédie libre.

Pour les articles homonymes, voir FIFO.
Les algorithmes d'ordonnancement

EDF - Rate-monotonic - Round-robin

LIFO - FIFO -

L'acronyme FIFO est l'abréviation de l'expression anglaise First In, first Out, que l'on peut traduire par « premier arrivé, premier servi » (littéralement « premier entré, premier sorti »). Ce terme est souvent employé en informatique pour décrire une méthode de traitement des données. Cette méthode correspond à une méthode de traitement des éléments d'une file d'attente (calculs d'un ordinateur, stocks). Selon Donald E. Knuth[1] les premiers à considérer ce concept comme digne d'étude étaient sans doute les cost accountants.

Si l'avantage de cette politique d'ordonnancement réside dans sa simplicité, elle pénalise les processus à temps bref d'exécution. En effet, si un processus demandant beaucoup de temps de calcul est lancé, suivi directement par une petite tâche (l'utilisateur appuie sur retour dans son traitement de texte) la petite tâche devra attendre la fin de l'autre pour s'exécuter.

Cet algorithme est également utilisé comme politique de remplacement des lignes de cache en raison de sa simplicité d'implémentation et de son faible coût. Néanmoins, il présente une anomalie connue sous le nom d'anomalie de Belady: augmenter le nombre d'étages de la pile peut avoir un effet négatif sur la performance.

Cette expression est également très utilisée en comptabilité analytique, et d'une manière générale dans les techniques de gestion des stocks.
Elle est dans ce cas souvent traduite par PEPS pour « Premier Entré, Premier Sorti ». En pratique le produit qui est arrivé le premier dans le stock sera le premier à sortir du stock (pour être vendu, utilisé ou comptabilisé). La méthode PEPS est très utilisée notamment pour les produits périssables. Mais on pourra lui préférer la méthode FEFO.

Dans l'industrie, elle permet également une gestion des stocks de petites pièces (boites de rondelles par exemple) optimisée par rapport au temps demandé pour s'en procurer.

[modifier] Références

  1. The Art of Computer Programming, Volume 1, Third Edition, p. 459

[modifier] Voir aussi