next up previous contents
Next: Algoritmo de Lambert Up: Algoritmo de Dekker Previous: Cuarto intento

Quinto intento

1968

Al final obtenemos con el quinto intento el algoritmo de Dekker:

Initially:  v0 is equal false
            v1 is equal false
            v  is equal P0 o P1

P0                               P1
  non-critical section             non-critical section
  set v0 to true                   set v1 to true
  loop                             loop
    if v1 equals false exit          if v0 equals false exit
    if v equals P1                   if v equals P0
      set v0 to false                  set v1 to false
      wait until v equals P0           wait until v equals P1
      set v0 to true                   set v1 to true
    fi                               fi
  endloop                          endloop
  critical section using r         critical section using r
  set v0 to false                  set v1 to false
  set v to P1                      set v to P0

El algoritmo de Dekker resuelve el problema de exclusión mutua en el caso de dos procesos (con memoria común).



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