29

Kelly

Embed Size (px)

Citation preview

Page 1: Kelly
Page 2: Kelly

Sistemas operativos

Kelly Salina. Carlos Rodelo.

Facultad :Tecnología en sistemas

UNIVERSIDAD TECNOLOGICA DE BOLIVAR

Page 3: Kelly

Bloqueo

Los sistemas tienen una gran cantidad de recursos los cuales solo pueden ser utilizados por un proceso a la vez. entre los ejemplos frecuentes encontramos:

unidades de cinta impresoras

Page 4: Kelly

En un caso dado que dos procesos utilizaran

en forma simultanea la impresora el resultado seria un verdadero caos . Por ello los sistemas operativos cuentan con la capacidad de permitir a un proceso ( en forma temporal) el paso exclusivo a ciertos recursos

Page 5: Kelly

En considerables aplicaciones los procesos urgen el acceso especial a varios recursos de el sistema no obstante en un sistema con multiprogramación pueden surgir serios problemas

Page 6: Kelly

Ejemplo:

Dos procesos desean imprimir cada uno un enorme archivo en cinta . El proceso A solicita el permiso para utilizar la impresora el cual se le concede . Cuando el proceso B solicita permiso para utilizar la unidad en cinta y se le otorga . El proceso A solicita la unidad en cinta pero la solicitud es denegada hasta que B la libere

Page 7: Kelly

Bloqueos mutuos (interbloqueos) Procesos solicitan recursos

(bloqueos mutuos) ocurren cuando se acaparan procesos y no se liberan mas.

Cuando un proceso se le asigna recursos el proceso voluntariamente es el que da la orden de terminar el recurso.

Page 8: Kelly

P1 R1

P2 R2

En un determinado proceso p1 necesita de r2 y p2 de r1 y que el sistema esta en bloqueo mutuo

No se le puede asignar recursos , los procesos tienen recursos que los tienen otros procesos y no se les puede asignar porque otros ya los tienen y de esta forma el sistema se bloquea.

Page 9: Kelly

Caracteristicas: Retener y esperar : un proceso retiene un

recurso y no espera por otro No expropiación : los recursos no se pueden

arrebatar, son liberados por el proceso que se les pidio.

Espera circular : Debe cadena circular de dos o mas procesos cada uno de los cuales espera un recurso poseido por el siguiente miembro de la cadena.

Mutua exclusión: tipo de recurso que no se puede compartir en un proceso.

Page 10: Kelly

Exclusion mutua

Posesión y espera

No apropiación

Bloqueo

Condiciones de bloqueo

Se clasifica

Espera circular

Recursos anteriores no pueden dejar un proceso.

Cada recurso esta asignado a

un proceso

Cadena circular de dos o mas

procesos en los cuales se espera

un recurso del siguiente

Procesos con anterioridad

pueden solicitar nuevos

recursos

Page 11: Kelly

Ejemplo:

R1: quemadora de DVD

no la puede quitar porque no

la pueda compartir

P1 P2 P3

A1

P1P2

Page 12: Kelly

Los bloqueos mutuos se manejan en dos puntos de vistas :

Grafica: asignación de recursos. Grafo: estructura de datos que tiene nodos,

aristas y sirve para representar algo o una serie de elementos

Page 13: Kelly

P

Vértices R ejemplar de un mismo tipo

ejemplar de varios recursos

.

.

.

.

Page 14: Kelly

P R (arista de solicitud) Arista

R P (arista de asignación)

proceso solicita usa libera.

Page 15: Kelly

Ejemplo: R1 1 P= (P1, P2, P3) R2 2 R3 1 R= (R1,R2,R3,R4) R4 3

E = (P1 R1, P2 R3 , R1 P2,

(R2 P2, R2 P1 , R3 , P3 )

Page 16: Kelly

R1 R3

no hay bloqueo

R2 si hay bloqueo porque ni ciclo porque

debe esperar no volvió a su origen.

R4

.

p1

.

.

p2

.

p3

.

.

.

Page 17: Kelly

Recursos

En esclarecimiento un recurso es cualquier cosa que solo puede ser utilizada por un único proceso en un instante dado.

Existen dos clases de recursos en los cuales encontramos los siguientes :

Apropiables : puede tomar el proceso que lo posee sin efectos dañinos un ejemplo seria la memoria.

Page 18: Kelly

No apropiables : estos son los que no se pueden tomar de su poseedor sin provocar un fallo de calculo.

Las secuencias necesarias para utilizar un recursos es :

Solicitar el recurso Utilizar el recurso Liberar el recurso

Cabe aclarar que si el recurso no esta disponible cuando se solicita el proceso debe esperar.

En algunos sistemas se tiene una llamada a el sistema, REQUEST, esto es para que los procesos soliciten de manera explicita los recursos

Page 19: Kelly

Algoritmo especifico (métodos para manejar bloqueos)

Prevenir :en este caso usan protocolos para los cuales hacen que las características no se cumplan. prevención mediante la negacion de una de las cuatro condiciones necesarias

Evitar: invoca serie de rutinas para determinar si el sistema puede o no asignar recursos, evitarlos de forma dinámica mediante una cuidadosa asignación de recursos

Page 20: Kelly

estrategias para enfrentar bloqueos

ignorar el problema Detención y recuperación

Page 21: Kelly

Detención y recuperación de bloqueos.

El sistema no intenta evitar los bloqueos si no que deja que aparezcan, intenta detectar cuando esto ocurre y después lleva a cabo una acción para recuperarse después del hecho.

Page 22: Kelly

Recuperación mediante la apropiación Tomar recurso en forma pasajera de su

poseedor y dárselo a otro proceso. En algunos casos se necesita una intervención manual en los sistemas operativos para el procesamiento que se ejecuta en mainframes.

Recuperación mediante rollback:

Los recursos pueden ser verificados en forma periódica. Esta verificación del proceso indica que su estado se escribe en un archivo de manera que pueda iniciarse mas tarde.

Page 23: Kelly

Recuperación mediante la eliminación de procesos.

Para esta recuperación se debe eliminar uno o mas procesos para poder romper un bloqueo o como medida alternativa de deberá eliminar un proceso que no este en el ciclo y así liberar sus recursos

Page 24: Kelly

Bloqueos

Evasión de bloqueo

En este el sistema debe poder decidir si el otorgamiento de un

recurso es seguro o no y asignarlo solo en caso de que

sea seguro

Prevención de bloqueos

Si podemos garantizar que al menos uno de los cuatro

condiciones nunca se satisfaga los bloqueos serán imposibles.

prevención de la condición

Detenerse y esperar

Si se puede evitar que los procesos que conservan

recursos esperen mas recursos, podemos eliminar los bloqueos

Prevención de condición de exclusión mutua:

si ningún recurso se asigna de manera exclusiva a un solo proceso nunca tendríamos

bloqueos.

Page 25: Kelly

Bloqueos sin recursos

Bloqueos sin recursos Los bloqueos no solo aparecen con

recursos si no en otras ocasiones aun aquellas que no están relacionadas con los recursos

Ejemplo: Dos procesos se bloquean en espera de

que el otro realice cierta acción . Cabe recordar que esto ocurre en los semáforos.

Page 26: Kelly

Como se evita un bloqueo? Se puede evitar mediante un registro de

los estados seguros y los inseguros estado seguro es aquel para el que existe una secuencia de eventos que garanticen el cierre de los procesos

El estado inseguro es aquel que no tiene dicha garantía , el algoritmo de barquero EVITA el bloqueo .

Page 27: Kelly

Un bloqueo se puede prevenir en forma estructural.

Ejemplo : al permitir que solo un recurso conserve un recurso a la vez , se rompe la condición de espera circular necesaria para el bloqueo también el bloqueo mutuo se puede prevenir al numerar todos los recursos y hacer que los procesos los soliciten en orden creciente

Page 28: Kelly

Conclusión

“dos o mas procesos pelean por un recurso” el bloqueo es un problema potencial en cualquier sistema operativo y ocurre cuando cada uno de los integrantes de procesos desea un recurso que pertenece a otro proceso

Page 29: Kelly

GRACIAS!!!