Interbloqueo ( deadlock, abrazo mortal) - PowerPoint PPT Presentation

1 / 17
About This Presentation
Title:

Interbloqueo ( deadlock, abrazo mortal)

Description:

Acciones at micas Hasta aqu la comunicaci n entre dos procesos se expreso ... ( deadlock, abrazo mortal) Dos procesos forman un interbloqueo cuando cada uno ... – PowerPoint PPT presentation

Number of Views:49
Avg rating:3.0/5.0
Slides: 18
Provided by: este104
Category:

less

Transcript and Presenter's Notes

Title: Interbloqueo ( deadlock, abrazo mortal)


1
Sistemas en tiempo real (STR) Segunda parte
2
Acciones atómicas
  • Hasta aquí la comunicación entre dos procesos se
    expreso como una comunicación simple.

No siempre ocurre así Ej extraccion por cajero
automático
Necesito que todos vean un estado consistente del
sistema Estado valores de las variables en un
momento dado de tiempo
3
Acciones atómicas
  • Traspaso de fondos de una cuenta bancaria a otra
  • Proceso de pedido de transferencia
  • Proceso de autenticación de cliente
  • Proceso de autenticación de cuenta a la que se
    transfiere
  • Proceso de debito
  • Proceso de Acreditación

Acción atómica
4
Acciones atómicas
  • Una acción es atómica si los procesos que la
    realizan no saben de la existencia de ningún otro
    proceso activo, y ningún otro proceso activo
    tiene constancia de las actividades de los
    procesos durante el tiempo en el que están
    realizando la acción.
  • Una acción es atómica si los procesos que la
    realizan no se comunican con otros procesos
    mientras se está realizando la acción.

5
Acciones atómicas
  • Una acción es atómica si los procesos que la
    realizan no pueden detectar ningún cambio de
    estado salvo aquellos realizados por ellos
    mismos, y si no revelan sus cambios de estado
    hasta que la acción se haya completado.
  • Las acciones son atómicas si, en lo que respecta
    a otros procesos, pueden ser consideradas
    indivisibles e instantáneas, de forma que los
    efectos sobre el sistema sean como si estuvieran
    entrelazadas y no en concurrencia.

6
Acciones atómicas de dos fases
  • Primer fase
  • Petición de recursos
  • Segunda fase
  • Liberación de recursos

Si se liberan recursos antes que la acción
atómica finalice puede existir problemas con la
recuperación de un fallo
7
Control de recursos
  • Parte del comportamiento lógico del software de
    tiempo real está relacionado con la asignación de
    recursos.

8
Control de recursos
  • Tienen injerencia los procesos competitivos.
  • Aunque no se comuniquen entre ellos, pueden
    comunicarse para coordinar el acceso a recursos.
  • Muy pocos recursos admiten el acceso concurrente
    de procesos.

9
Control de recursos
  • Cuando varios procesos que compiten necesiten
    recursos el modo de operación es el siguiente
  • Petición del recurso
  • Utilización
  • Liberación

10
Petición de recursos
  • Un recurso se puede solicitar con
  • Acceso compartido se puede utilizar
    concurrentemente por más de un proceso.
  • Acceso exclusivo acceso en cada instante a un
    único proceso.
  • Algunos se pueden utilizar e cualquier modo

11
Petición de recursos
  • Si un proceso pide acceso compartido mientras
    otro lo está usando en forma exclusiva ,entonces
    debe esperar.
  • Si se estaba usando en forma compartida puede
    seguir.

12
Petición de recursos
  • Como los procesos pueden bloquearse al solicitar
    recursos, no deben pedirlos hasta que lo
    necesiten.
  • Una vez asignados deben liberarse tan pronto como
    sea posible, una vez que la acción que se quería
    realizar con el recurso haya finalizado

13
Interbloqueo ( deadlock, abrazo mortal)
  • Dos procesos forman un interbloqueo cuando cada
    uno mantiene un recurso mientras que espera el
    recurso mantenido por el otro.

type Sem is ... X Sem 1 Y Sem 1
task A task body A is begin ... Wait(X) Wait
(Y) ... end A
task B task body B is begin ... Wait(Y) Wait
(X) ... end B
14
Interbloqueo activo
  • Dos procesos forman un interbloqueo activo si
    cada uno se ejecuta, pero ninguno es capaz de
    avanzar.

type Indicador is (Arriba, Abajo) Indicador1
Indicador Arriba
task A task body A is begin ... while
Indicador1 Arriba loop null end loop
... end A
task B task body B is begin ... while
Indicador1 Arriba loop null end loop
... end A
15
Inanición
  • Varios procesos están intentando continuamente
    conseguir acceso exclusivo al mismo recurso. Si
    la política con que se asignan no es justa, puede
    que un proceso no acceda nunca al recurso.

16
Condiciones para el interbloqueo
  • Exclusión mutua solo un proceso puede usar un
    recurso al mismo tiempo.
  • Mantenimiento y espera debe haber procesos que
    mantengan recursos mientras esperan otros.
  • No desalojo un recurso solo puede ser liberado
    voluntariamente por un proceso
  • Espera circular debe existir una cadena circular
    de procesos, de forma que cada proceso mantenga
    recursos que solicita el siguiente proceso.

17
Métodos para tratar el interbloqueo
  • Prevención de interbloqueo
  • Evitar el interbloqueo
  • Detección y recuperación del interbloqueo
Write a Comment
User Comments (0)
About PowerShow.com