Partage
  • Partager sur Facebook
  • Partager sur Twitter

Fonctionnement Buffer (Tampon)

Sujet résolu
    27 janvier 2017 à 18:14:03

    Bonsoir,

    Depuis mes débuts en programmation je rencontre régulièrement la notion de buffer dans différents langages. Dans son cours, "Apprenez à programmer en Java", Cyrille Herby met en évidence le gain de temps important (et donc d'efficacité) lors de l'utilisation d'un buffer pour la lecture ou écriture dans un fichier texte.

    Comment fonctionne en détail un buffer et en quoi permet-il d'avoir cette efficacité accrue?

    En cherchant une réponse j'ai seulement pu trouver la définition d'un buffer mais pas de réelle explication quant à son apport d'efficacité dans un programme. La piste me semblant la plus cohérente est le fonctionnement des disques par secteur étant incapable incapable de lire ou écrire uniquement un octet, le buffer servant à stocker le surplus de données afin de les réutiliser et de ne pas effectuer une nouvelle requête (je sais pas si requête est le terme approprié) Cela est-il exact? Si oui comment expliquer ce comportement de la part du disque?

    Merci à vous.

    -
    Edité par Antoine.Stock 27 janvier 2017 à 19:57:08

    • Partager sur Facebook
    • Partager sur Twitter
    Un hérisson psychopathe
      28 janvier 2017 à 10:57:21

      Bonjour,

      L'écriture dans un fichier se fait à l'aide d'un appel système (write). Un appel système, c'est une interruption du programme pour faire appel au noyau du système d'exploitation, donc c'est c'est coûteux.

      Mettre en mémoire tampon, dans le cadre d'une écriture, ça permet de stocker tous les caractères à écrire dans un tableau, et quand la taille maximale est dépassée, ou qu'un certain caractère est rencontré (\n par exemple), de réaliser l'appel système proprement dit.

      La même chose est valable en lecture, plutôt que de réaliser de petits appels successifs à read, on lit un gros bloc que l'on stocke dans un tampon, et on le retourne par morceaux à chaque appel.

      • Partager sur Facebook
      • Partager sur Twitter

      Fonctionnement Buffer (Tampon)

      × Après avoir cliqué sur "Répondre" vous serez invité à vous connecter pour que votre message soit publié.
      × Attention, ce sujet est très ancien. Le déterrer n'est pas forcément approprié. Nous te conseillons de créer un nouveau sujet pour poser ta question.
      • Editeur
      • Markdown