Mémoire tampon

Un article de Wikipédia, l'encyclopédie libre.
Aller à : navigation, rechercher
Ce modèle est-il pertinent ? Cliquez pour en voir d'autres.
Cet article ne cite pas suffisamment ses sources (février 2016).

Si vous disposez d'ouvrages ou d'articles de référence ou si vous connaissez des sites web de qualité traitant du thème abordé ici, merci de compléter l'article en donnant les références utiles à sa vérifiabilité et en les liant à la section « Notes et références » (modifier l'article, comment ajouter mes sources ?).

Page d'aide sur l'homonymie Pour les articles homonymes, voir Tampon et Buffer.

En informatique, une mémoire tampon, couramment désignée par le terme anglais buffer, est une zone de mémoire vive ou de disque utilisée pour entreposer temporairement des données, notamment entre deux processus ou matériels ne travaillant pas au même rythme.

Description[modifier | modifier le code]

Du fait de la différence de vitesse entre le processeur et le périphérique, les données envoyées vers un périphérique (interne ou externe) sont le plus souvent stockées dans des mémoires tampon en attente de leur envoi effectif vers le périphériques, pour épargner à l’ordinateur l'attente dû à la différence de débits entre le microprocesseur interne et les différents périphériques souvent lents. De même, les données reçues de l'extérieur sont le plus souvent rassemblées dans des tampons en attente de leur traitement par l'ordinateur (pour des raisons d'efficacité, et aussi pour éviter qu'une réception de données trop rapprochées fasse que certaines, non traitées, ne soient perdues).

Les périphériques tels que les ports séries sont le plus souvent munis de tampons file d'attente : les données émises ou reçues en premier sont traitées en premier. Une émission trop rapide peut remplir le tampon ; on bloque alors généralement le processus émetteur. Une réception trop rapide peut, elle aussi, bloquer le tampon, avec risque de perte de données ; aussi utilise-t-on souvent un dispositif de contrôle de flux disant à l'émetteur d'arrêter son émission quand le tampon est dangereusement près de la limite, et de recommencer quand le niveau est redevenu acceptable.

Utilisation[modifier | modifier le code]

Dans certains langages de programmation comme le C, des tampons sont systématiquement utilisés pour réguler les Entrées-Sorties, par exemple la lecture ou l'écriture dans un fichier. Concrètement, le tampon est une chaîne de caractères accompagnée d'un indice ou d'un pointeur désignant la position de lecture courante. Dans le cas d'une écriture, le contenu du tampon est partiellement ou intégralement recopié dans la sortie, puis il est mis à jour, et le processus est répété un certain nombre de fois; dans le cas d'une lecture, à chaque étape, une partie de l'entrée est copiée dans le tampon pour être utilisée. Ce système permet de limiter les appels système read et write, qui sont beaucoup plus lents que les autres types d'instructions.

Notes et références[modifier | modifier le code]

Voir aussi[modifier | modifier le code]