Intentos de dekker

Páginas: 3 (631 palabras) Publicado: 13 de agosto de 2010
ALGORITMOS DE DEKKER

Primer intento
Usamos una variable v que nos indicará cual de los dos procesos tiene su turno.
P0 P1
a: looploop
b: wait until v equals P0 wait until v equals P1
c: critical section critical section
d: set v to P1 set v to P0
e: non-criticalsection non-critical section
f: endloop endloop
• Está garantizada la exclusión mutua porque un proceso llega a su línea c: solamente si el valor de vcorresponde a su identificación (que asumimos siendo única).
• Obviamente, los procesos pueden acceder al recurso solamente alternativamente, que puede ser inconveniente porque acopla los procesosfuertemente.
• Un proceso no puede entrar más de una vez seguido en la sección crítica.
• Si un proceso termina el programa (o no llega más por alguna razón a su línea d:, el otro proceso puederesultar bloqueado.
• La solución se puede ampliar fácilmente a más de dos procesos.

Segundo intento
Intentamos evitar la alternancia. Usamos para cada proceso una variable, v0 para P0 y v1 paraP1 respectivamente, que indica si el correspondiente proceso está usando el recurso.
P0 P1
a: loop loop
b: wait until v1 equals falsewait until v0 equals false
c: set v0 to true set v1 to true
d: critical section critical section
e: set v0 to false set v1 tofalse
f: non-critical section non-critical section
g: endloop endloop
• Ya no existe la situación de la alternancia.
• Sin embargo: el algoritmo noestá seguro, porque los dos procesos pueden alcanzar sus secciones críticas simultáneamente.
El problema está escondido en el uso de las variables de control. v0 se debe cambiar a verdadero solamente...
Leer documento completo

Regístrate para leer el documento completo.

Estos documentos también te pueden resultar útiles

  • dekk
  • Intentar
  • Intento
  • intentos
  • intento
  • Intentando
  • strategic intent (intentos estrategicos)
  • Algoritmo De Dekker

Conviértase en miembro formal de Buenas Tareas

INSCRÍBETE - ES GRATIS