¿Qué es el intercambio falso?

El intercambio falso es una situación que puede ocurrir en un programa de computadora cuando dos aplicaciones que se ejecutan simultáneamente intentan acceder a la información en la misma región de memoria lógica que cada programa o proceso ha almacenado en su propio caché. Los datos en el caché de cada aplicación se copian de una fuente común, por lo que modificar un caché hace que el otro tenga que ser recargado de la fuente. El aspecto falso del intercambio surge cuando los cambios realizados en la línea de caché por un programa en realidad no afectan los datos que el segundo programa está utilizando, en cuyo caso obligar a la memoria caché se vuelve a cargar es una pérdida de recursos del sistema y puede afectar negativamente el rendimiento del programa. El problema del intercambio falso es difícil de detectar, porque no es un resultado directo de ningún código contenido dentro de las aplicaciones, aunque hay formas efectivas de evitar el intercambio falso, como los datos móviles que están en una línea en caché actualmente a una línea separada.

.

Una de las razones principales por las que puede ocurrir falsas compartir en cómo un sistema operativo o hardware maneja los datos de lectura y escritura. Cuando un programa lee o escribe información de un disco duro u otra fuente, generalmente se carga en un caché temporal para que se pueda acceder rápidamente. La cantidad de información que se almacena en caché desde la ubicación de origen se llama línea de caché y es un bloque lógico de memoria que normalmente puede tener entre 2 bytes y 256 bytes de longitud. Según algunos sistemas operativos o arquitecturas de sistemas, los programas pueden ejecutarse al mismo tiempo, como en el procesamiento paralelo. Esto significa que es posible que dos programas separados intenten acceder a la información en la misma línea de caché, por lo que cada programa tendrá su propia copia de los datos de origen, lo que podría causar cambios en un caché que no se reflejarán en el otro caché, invalidando los datos que posee.

Hay una serie de mecanismos empleados para haEncuentra la situación cuando dos programas intentan acceder a la misma línea de caché, pero el resultado con mayor frecuencia es que un programa se ve obligado a recargar su caché con la información actualizada que el otro programa ha modificado. Este tipo de incidente se conoce como Falso Compartir cuando los datos dentro de la línea de caché al que cada programa está accediendo no están relacionados, por lo que obligar a un programa a recargar el caché es un desperdicio de potencia de procesamiento y otros recursos. Esto a menudo es un problema para un programa que nunca modificará la información en su caché, por lo que no existe el riesgo de que los cambios de sobrescritura de la aplicación haya realizado el otro proceso.

.

Existen dos formas prevalentes para prevenir o mitigar los efectos del intercambio falso. El primero es agregar información en blanco antes o después de los datos en la memoria, lo que esencialmente la obliga a una línea de caché separada a la que no está accediendo otro programa. El segundo método es restringir la frecuencia de lectura y escritura a la línea de caché para que se vuelva a cargar como little como sea posible. Las soluciones más complejas implican la administración a nivel de caché o incluso cambian a cómo un sistema operativo maneja el intercambio.

OTROS IDIOMAS