En informática, una barrera de memoria es un tipo de restricción de pedidos que ayuda a equilibrar la demanda de la memoria que está disponible para procesar varios comandos y funciones. También conocido como “membar” o como “valla de memoria”, la idea es crear algún tipo de orden jerárquico o progresión a todas las tareas pendientes que tienen que ver con la utilización de esa memoria. Hacerlo permite ejecutar esas tareas en una secuencia lógica y evitar la posibilidad de sobrecarga de memoria, algo que podría dañar permanentemente la capacidad de memoria del sistema.
En la práctica real, una barrera de memoria es una clase o conjunto de instrucciones que están diseñadas para evitar el uso de la memoria disponible de alguna manera que podría socavar la función real de esa memoria. Dado que la barrera o valla está basada en hardware, esto significa que generalmente está asociada con la función de la unidad central de procesamiento (CPU) o algún otro dispositivo. Esto a menudo puede ser necesario cuando la memoria sirve a más de una máquina o dispositivo y el acceso a esa memoria debe asignarse de alguna manera lógica. Sin crear este tipo de barrera de memoria para mantener las funciones dentro de una secuencia lógica, la posibilidad de que varias tareas se ejecuten fuera de orden y tal vez incluso dañen los datos almacenados aumenta enormemente.
El término en sí es indicativo de lo que realmente ocurre. Una cerca generalmente realiza dos funciones al mismo tiempo, manteniendo algo adentro y también evita que algo externo ingrese al espacio, excepto a través de algún tipo de puerta. De esta manera, el acceso a todo lo que hay adentro se mantiene controlado por un guardián. Con una barrera de memoria, las instrucciones funcionan como ese guardián, permitiendo solo el acceso a la memoria de acuerdo con las instrucciones ordenadas. El resultado final es que se accede a los datos de forma lógica, las tareas se completan con precisión y el potencial de sobrecarga se mantiene dentro de límites razonables.
La necesidad de algún tipo de barrera de memoria se ha vuelto cada vez más evidente a medida que los sistemas informáticos se vuelven más potentes y se utilizan para controlar una gama más amplia de dispositivos externos que dependen de la memoria para su función. Cuando la clase de instrucciones utilizadas para la barrera esté preparada correctamente, el hardware responderá en consecuencia y todos los dispositivos funcionarán como deberían. En el caso de que la barrera se rompa o deje de funcionar, los problemas para ejecutar incluso las órdenes más simples pueden volverse extremadamente difíciles.