En informática , el almacenamiento en búfer múltiple es el uso de más de un búfer para almacenar un bloque de datos, de modo que un "lector" verá una versión completa (aunque quizás antigua) de los datos, en lugar de una versión parcialmente actualizada de los datos. siendo creado por un "escritor" . También se utiliza para evitar la necesidad de utilizar RAM de doble puerto (DPRAM) cuando los lectores y los escritores son dispositivos diferentes.
Una forma sencilla de explicar cómo funciona el almacenamiento en búfer múltiple es tomar un ejemplo del mundo real. Es un lindo día soleado y has decidido sacar la piscina infantil, solo que no encuentras tu manguera de jardín. Tendrás que llenar la piscina con baldes. Entonces, llena un balde (o tampón) del grifo, cierra el grifo, camina hacia la piscina, vierte el agua y regresa al grifo para repetir el ejercicio. Esto es análogo al almacenamiento en búfer simple. El grifo debe estar cerrado mientras "procesa" el cubo de agua.
Ahora considere cómo lo haría si tuviera dos cubos. Llenaría el primer cubo y luego cambiaría el segundo debajo del grifo. Luego, tiene el tiempo que tarda el segundo cubo en llenarse para vaciar el primero en la piscina infantil. Cuando regrese, simplemente puede cambiar los cubos para que el primero se esté llenando nuevamente, tiempo durante el cual puede vaciar el segundo en la piscina. Esto se puede repetir hasta que la piscina esté llena. Es evidente que esta técnica llenará la piscina mucho más rápido, ya que hay mucho menos tiempo esperando, sin hacer nada, mientras los cubos se llenan. Esto es análogo al doble búfer. El grifo puede estar abierto todo el tiempo y no tiene que esperar mientras se realiza el procesamiento.
Si contrató a otra persona para que llevara un balde a la piscina mientras uno se llena y otro se vacía, entonces esto sería análogo al almacenamiento en búfer triple. Si este paso tomara suficiente tiempo, podría emplear aún más cubos, de modo que el grifo esté continuamente llenando cubos.
En ciencias de la computación, la situación de tener un grifo abierto que no puede o no debe apagarse es común (como un flujo de audio). Además, las computadoras generalmente prefieren tratar con fragmentos de datos en lugar de flujos. En tales situaciones, a menudo se emplea doble búfer.
La red de Petri en la ilustración muestra cómo funciona el doble búfer. Las transiciones W1 y W2 representan la escritura en el búfer 1 y 2 respectivamente, mientras que R1 y R2 representan la lectura del búfer 1 y 2 respectivamente. Al principio solo está habilitada la transición W1. Después de que W1 se activa, R1 y W2 se habilitan y pueden continuar en paralelo. Cuando terminan, R2 y W1 proceden en paralelo y así sucesivamente.