Disclosed is an apparatus and method for providing synchronization support
in a multiprocessor environment using a memory interface that supports an
atomic read-modify-write operation as well as conventional read and write
access to memory. Selection of the operation is made dependent on which
ever address of a plurality of addresses is used to reference a single
physical memory location in which there is stored a lock variable used to
restrict access to a shared resource. When the particular access
corresponds to a read-modify-write operation, the lock variable is read
out and a modified version written back into memory on the condition that
the shared resource is available to the requesting processor. The method
and apparatus executes read-modify-write operations by interface logic
circuitry in response to a single processor read operation. Through these
atomic or otherwise indivisible operations, the method and apparatus
precludes multiprocessor conflict.
Se divulga un aparato y el método para proporcionar la ayuda de la sincronización en un ambiente del multiprocesador usando un interfaz de la memoria que apoye un atómico leer-modificar-escriba la operación así como haber leído convencional y escribe el acceso a la memoria. La selección de la operación se hace dependiente en qué dirección de una pluralidad de direcciones se utiliza siempre para referirse a una sola posición de memoria física en la cual se almacene una variable de la cerradura usada para restringir el acceso a un recurso compartido. Cuando el acceso particular corresponde a una operación del leer-modificar-escribir, la variable de la cerradura se lee hacia fuera y una versión modificada escrita nuevamente dentro de memoria a condición de que el recurso compartido está disponible para el procesador de petición. El método y el aparato se ejecuta leer-modificar-escriben operaciones por el trazado de circuito de la lógica del interfaz en respuesta a una operación leída del solo procesador. Con estas operaciones atómicas o de otra manera indivisibles, el método y el aparato imposibilita conflicto del multiprocesador.