En MIPS, ¿qué son las instrucciones condicionales cargadas y almacenadas?

Las instrucciones de carga vinculada (LL) y almacenamiento condicional (SC) son una forma de lograr actualizaciones de memoria atómica en sistemas multiprocesador de memoria compartida, sin bloquear ubicaciones de memoria para el acceso exclusivo de un procesador.

La idea es que use LL para cargar el valor almacenado en una ubicación de memoria en un registro, modificarlo como quiera allí y luego escribirlo de nuevo en el mismo lugar usando SC. SC solo sobrescribirá el valor en la memoria con el modificado si ningún otro procesador lo ha alterado mientras trabajaba en la copia en el registro. Tiene el efecto secundario de establecer un indicador de estado para indicar si tuvo éxito o no.

Cuando el valor actualizado se almacena con éxito, un hilo puede confiar en que su secuencia de lectura-modificación-escritura se completó sin interferencia de otros hilos. En caso de falla, depende del programa decidir si renunciar o recargar la dirección e intentar nuevamente, pero al menos no produce una condición de carrera no detectada.

More Interesting

Cómo obtener más memoria virtual

¿Cómo puede un robot / máquina alcanzar un estado de autoconciencia?

Cómo trazar la capacidad calorífica específica en función de la temperatura, en una simulación MC

¿Cómo se puede conectar una bomba a la CPU de una computadora y / o computadora portátil?

Tengo 4 años de experiencia en TI. Estoy planeando cambiar a BIG Data y Hadoop. ¿Cuáles son los pros y los contras que debo tener en cuenta?

¿Cuál es el nombre de los 16 bits más bajos del registro ECX?

¿Cuál es el problema más desafiante resuelto por un ingeniero en escalabilidad y sistema distribuido, analítica en tiempo real?

¿Qué compañías en Ahmedabad ofrecen pasantías para un estudiante de informática (de 2 a 3 semanas)?

Excepto la arquitectura Lambda, ¿qué otras arquitecturas de big data existen?

¿Cómo puede una máquina compartir datos con diferentes computadoras a través de una red cableada?

¿Existen pequeños proyectos significativos en el aprendizaje automático?

Si quisiera crear mi propia wiki que eventualmente podría monetizar a través de anuncios, ¿cuál sería la mejor / más rápida forma de hacerlo?

¿Qué debo hacer ya que estoy realmente frustrado con el programa de capacitación de Infosys? Y como no soy de CS, estoy realmente confundido acerca de mi futuro.

¿Las computadoras empeoran el comportamiento humano?

¿Es bueno que un estudiante de secundaria vaya a la escuela Holberton en lugar de obtener un título de CS de una universidad de ingeniería?