Je vois le mot "BUFFER" partout, mais je suis incapable de comprendre ce que c'est exactement.
- Quelqu'un pourrait-il expliquer ce qu'est un tampon en langage profane ?
- Quand est-il utilisé?
- Comment est-ce utilisé?
Je vois le mot "BUFFER" partout, mais je suis incapable de comprendre ce que c'est exactement.
Réponses:
Imaginez que vous mangez des bonbons dans un bol. Vous prenez un morceau régulièrement. Pour éviter que le bol ne s'épuise, quelqu'un peut remplir le bol avant qu'il ne se vide, de sorte que lorsque vous voulez prendre un autre morceau, il y a des bonbons dans le bol.
Le bol agit comme un tampon entre vous et le sac de bonbons.
Si vous regardez un film en ligne, le service Web téléchargera continuellement les 5 prochaines minutes environ dans une mémoire tampon, de cette façon votre ordinateur n'aura pas à télécharger le film pendant que vous le regardez (ce qui entraînerait un blocage).
Le terme «tampon» est un terme très générique, et n'est pas spécifique à IT ou CS. C'est un endroit pour stocker quelque chose temporairement, afin d'atténuer les différences entre la vitesse d'entrée et la vitesse de sortie. Alors que le producteur est plus rapide que le consommateur, le producteur peut continuer à stocker la sortie dans la mémoire tampon. Lorsque le consommateur accélère, il peut lire à partir du tampon. Le tampon est là au milieu pour combler l'écart.
Si vous faites la moyenne des définitions sur http://en.wiktionary.org/wiki/buffer , je pense que vous aurez l'idée.
Pour la preuve que nous avons vraiment "dû marcher 10 miles en pensant à la neige tous les jours pour aller à l'école", voir TOPS-10 Monitor Calls Manual Volume 1 , section 11.9, "Using Buffered I / O", au signet 11-24. Ne lisez pas si vous êtes sujet à des cauchemars.
Un tampon est simplement un morceau de mémoire utilisé pour contenir des données. Dans le sens le plus général, il s'agit généralement d'une seule goutte de mémoire chargée en une seule opération, puis vidée dans un ou plusieurs exemples de «bol de bonbons» de Perchik. Dans un programme C, par exemple, vous pourriez avoir:
#define BUFSIZE 1024
char buffer[BUFSIZE];
size_t len = ;
// ... later
while((len=read(STDIN, &buffer, BUFSIZE)) > 0)
write(STDOUT, buffer, len);
... qui est une version minimale de cp (1) . Ici, le tableau de tampons est utilisé pour stocker les données lues par read (2) jusqu'à ce qu'elles soient écrites; puis le tampon est réutilisé.
Il y a des schémas de tampons plus compliqués utilisés, par exemple un tampon circulaire , où un certain nombre fini de tampons est utilisé, l'un après l'autre; une fois que les tampons sont tous pleins, l'index «s'enroule» afin que le premier soit réutilisé.
Buffer signifie «stockage temporaire». Les tampons sont importants en informatique car les dispositifs et les systèmes interconnectés sont rarement «synchronisés» les uns avec les autres, de sorte que lorsque les informations sont envoyées d'un système à un autre, elles doivent attendre que le système destinataire soit prêt.
En réalité, cela dépendrait du contexte dans chaque cas car il n'y a pas de définition unique - mais en termes très généraux, un tampon est un endroit pour contenir temporairement quelque chose. La meilleure analogie du monde réel à laquelle je puisse penser serait une zone d'attente. Un exemple simple en informatique est celui où le tampon fait référence à une partie de la RAM utilisée pour le stockage temporaire des données.
Le tampon est un espace réservé temporaire (variables dans de nombreux langages de programmation) en mémoire (RAM / disque) sur lequel les données peuvent être vidées puis le traitement peut être effectué.
La mise en mémoire tampon présente de nombreux avantages, comme cela permet aux choses de se produire en parallèle, d'améliorer les performances d'E / S, etc.
Il présente également de nombreux inconvénients s'il n'est pas utilisé correctement, comme le dépassement de tampon, le dépassement de tampon, etc.
C Exemple de tampon de caractères.
char * buffer1 = calloc (5, sizeof (char));
char * buffer2 = calloc (15, sizeof (char));
Un tampon est une zone de données partagée par des périphériques matériels ou des processus de programme qui fonctionnent à différentes vitesses ou avec différents ensembles de priorités. Le tampon permet à chaque appareil ou processus de fonctionner sans être retenu par l'autre. Pour qu'un tampon soit efficace, la taille du tampon et les algorithmes pour déplacer les données dans et hors du tampon.
Le tampon est un «lieu de maintien du point médian» mais n'existe pas tant pour accélérer la vitesse d'une activité que pour soutenir la coordination d'activités séparées.
Ce terme est utilisé à la fois en programmation et en matériel. En programmation, la mise en mémoire tampon implique parfois la nécessité de filtrer les données à partir de leur emplacement final prévu afin qu'elles puissent être modifiées ou traitées d'une autre manière avant d'être déplacées vers un fichier ou une base de données normal.
Le tampon est un espace réservé temporaire (variables dans de nombreux langages de programmation) en mémoire (RAM / disque) sur lequel les données peuvent être vidées puis le traitement peut être effectué.
Le terme «tampon» est un terme très générique, et n'est pas spécifique à IT ou CS. C'est un endroit pour stocker quelque chose temporairement, afin d'atténuer les différences entre la vitesse d'entrée et la vitesse de sortie. Alors que le producteur est plus rapide que le consommateur, le producteur peut continuer à stocker la sortie dans la mémoire tampon. Lorsque le consommateur accélère, il peut lire à partir du tampon. Le tampon est là au milieu pour combler l'écart.