next up previous contents
Next: Atomic-swap Up: Ayuda con hardware Previous: Ayuda con hardware   Índice General

Test-and-set

La instrucción test-and-set (TAS) implementa una comprobación del contenido de una variable en la memoria al mismo tiempo que varía su contenido en caso que la comprobación daba exito.

Así se puede realizar la exclusión mutua con


Loop:
  TAS lockbyte          ; test-and-set operation
  BNZ LOOP              ; loop until we get access
  ... critical section
  CLR lockbyte          ; clear lock

En caso de un sistema multi-procesador hay que tener cuidado que la operación test-and-set esté realizada cerca de la memoria compartida.



© 2001, Dr. Arno Formella, Universidad de Vigo, Departamento de Informática