Kelly
-
Upload
tecnologica -
Category
Education
-
view
96 -
download
2
description
Transcript of Kelly
![Page 1: Kelly](https://reader037.fdocumento.com/reader037/viewer/2022110307/5561f515d8b42a2a488b48a0/html5/thumbnails/1.jpg)
![Page 2: Kelly](https://reader037.fdocumento.com/reader037/viewer/2022110307/5561f515d8b42a2a488b48a0/html5/thumbnails/2.jpg)
Sistemas operativos
Kelly Salina. Carlos Rodelo.
Facultad :Tecnología en sistemas
UNIVERSIDAD TECNOLOGICA DE BOLIVAR
![Page 3: Kelly](https://reader037.fdocumento.com/reader037/viewer/2022110307/5561f515d8b42a2a488b48a0/html5/thumbnails/3.jpg)
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](https://reader037.fdocumento.com/reader037/viewer/2022110307/5561f515d8b42a2a488b48a0/html5/thumbnails/4.jpg)
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](https://reader037.fdocumento.com/reader037/viewer/2022110307/5561f515d8b42a2a488b48a0/html5/thumbnails/5.jpg)
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](https://reader037.fdocumento.com/reader037/viewer/2022110307/5561f515d8b42a2a488b48a0/html5/thumbnails/6.jpg)
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](https://reader037.fdocumento.com/reader037/viewer/2022110307/5561f515d8b42a2a488b48a0/html5/thumbnails/7.jpg)
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](https://reader037.fdocumento.com/reader037/viewer/2022110307/5561f515d8b42a2a488b48a0/html5/thumbnails/8.jpg)
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](https://reader037.fdocumento.com/reader037/viewer/2022110307/5561f515d8b42a2a488b48a0/html5/thumbnails/9.jpg)
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](https://reader037.fdocumento.com/reader037/viewer/2022110307/5561f515d8b42a2a488b48a0/html5/thumbnails/10.jpg)
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](https://reader037.fdocumento.com/reader037/viewer/2022110307/5561f515d8b42a2a488b48a0/html5/thumbnails/11.jpg)
Ejemplo:
R1: quemadora de DVD
no la puede quitar porque no
la pueda compartir
P1 P2 P3
A1
P1P2
![Page 12: Kelly](https://reader037.fdocumento.com/reader037/viewer/2022110307/5561f515d8b42a2a488b48a0/html5/thumbnails/12.jpg)
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](https://reader037.fdocumento.com/reader037/viewer/2022110307/5561f515d8b42a2a488b48a0/html5/thumbnails/13.jpg)
P
Vértices R ejemplar de un mismo tipo
ejemplar de varios recursos
.
.
.
.
![Page 14: Kelly](https://reader037.fdocumento.com/reader037/viewer/2022110307/5561f515d8b42a2a488b48a0/html5/thumbnails/14.jpg)
P R (arista de solicitud) Arista
R P (arista de asignación)
proceso solicita usa libera.
![Page 15: Kelly](https://reader037.fdocumento.com/reader037/viewer/2022110307/5561f515d8b42a2a488b48a0/html5/thumbnails/15.jpg)
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](https://reader037.fdocumento.com/reader037/viewer/2022110307/5561f515d8b42a2a488b48a0/html5/thumbnails/16.jpg)
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](https://reader037.fdocumento.com/reader037/viewer/2022110307/5561f515d8b42a2a488b48a0/html5/thumbnails/17.jpg)
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](https://reader037.fdocumento.com/reader037/viewer/2022110307/5561f515d8b42a2a488b48a0/html5/thumbnails/18.jpg)
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](https://reader037.fdocumento.com/reader037/viewer/2022110307/5561f515d8b42a2a488b48a0/html5/thumbnails/19.jpg)
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](https://reader037.fdocumento.com/reader037/viewer/2022110307/5561f515d8b42a2a488b48a0/html5/thumbnails/20.jpg)
estrategias para enfrentar bloqueos
ignorar el problema Detención y recuperación
![Page 21: Kelly](https://reader037.fdocumento.com/reader037/viewer/2022110307/5561f515d8b42a2a488b48a0/html5/thumbnails/21.jpg)
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](https://reader037.fdocumento.com/reader037/viewer/2022110307/5561f515d8b42a2a488b48a0/html5/thumbnails/22.jpg)
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](https://reader037.fdocumento.com/reader037/viewer/2022110307/5561f515d8b42a2a488b48a0/html5/thumbnails/23.jpg)
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](https://reader037.fdocumento.com/reader037/viewer/2022110307/5561f515d8b42a2a488b48a0/html5/thumbnails/24.jpg)
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](https://reader037.fdocumento.com/reader037/viewer/2022110307/5561f515d8b42a2a488b48a0/html5/thumbnails/25.jpg)
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](https://reader037.fdocumento.com/reader037/viewer/2022110307/5561f515d8b42a2a488b48a0/html5/thumbnails/26.jpg)
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](https://reader037.fdocumento.com/reader037/viewer/2022110307/5561f515d8b42a2a488b48a0/html5/thumbnails/27.jpg)
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](https://reader037.fdocumento.com/reader037/viewer/2022110307/5561f515d8b42a2a488b48a0/html5/thumbnails/28.jpg)
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](https://reader037.fdocumento.com/reader037/viewer/2022110307/5561f515d8b42a2a488b48a0/html5/thumbnails/29.jpg)
GRACIAS!!!