SlideShare a Scribd company logo
1 of 19
Sincronización de procesos
                                    4.1. Condiciones de competencia.
                                    4.1. Secciones Críticas.
                                    4.2. Exclusión mutua.
                    Tema 4          4.3. Dormir y despertar.
                                    4.4. Semáforos.
                                    4.5. Contadores de eventos.
                                    4.6. Transferencia de mensajes.
                                    4.7. Monitores.
                                   Interbloqueos.
                                   5.1 Recursos y bloqueos
                                     5.1.1 Definición de recurso.
                                     5.1.2 Bloqueos y condiciones de competencia.
                                     5.1.3 Modelación de bloqueos.
                    Tema 5
                                   5.2 Métodos para tratar los bloqueos
                                     5.2.1 Algoritmo del Avestruz
                                     5.2.2 Detección y recuperación de bloqueos.
                                     5.2.3 Evasión de bloqueos.
                                     5.2.4 Prevención de bloqueos.



Sistemas Operativos – Ingeniería Informática
Unidad II
                                                                                Gestión de Procesos


    Interbloqueo

      Problema que afecta a procesos concurrentes que utilizan recursos en un sistema.


      Esquema de interacción procesos-recursos:
      • Un proceso, a través de una llamada al sistema, solicita recursos.
      • Usa esos recursos, en caso de que estén disponibles.
      • A través de una llamada al sistema, el proceso libera los recursos cuando ya no los
            necesita.


      Ejemplo: Considere dos procesos y dos recursos. Supón que cada proceso necesita
            acceder a ambos recursos para llevar a cabo una parte de su función. Puede
            suceder que el sistema operativo asigne R1 a P1 y R2 a P2. Cada proceso está
            esperando uno de los dos recursos. Ninguno liberará el recurso que posee
            hasta que adquiera el otro y realice su tarea.




Sistemas Operativos – Ingeniería Informática                                        Tema 5 Interbloqueos
Unidad II
                                                                       Gestión de Procesos


    Interbloqueo

         El problema del interbloqueo:
         E Situación de un conjunto de procesos bloqueados, cada uno de ellos
         esperando por un recurso que retiene otro proceso de ese conjunto.
         • Ningún proceso del conjunto puede avanzar.
         • Interbloqueo, bloqueo mutuo, abrazo mortal (deadlock).




Sistemas Operativos – Ingeniería Informática                               Tema 5 Interbloqueos
Unidad II
                                                                              Gestión de Procesos


    Caracterización del Interbloqueo



             Grafo de asignación de recursos:
             Sirve para describir el interbloqueo, consta de un conjunto de vértices y
             un conjunto de flechas.


             Vértices: procesos y recursos.
             Flechas:
             • De asignación (Rj→Pi), indican que el recurso j se asignóal proceso i.
             • De solicitud (Pi→Rj), indican que el proceso i solicita el recurso j.
             Instancias: Número de ejemplares que hay de cada recurso.




Sistemas Operativos – Ingeniería Informática                                      Tema 5 Interbloqueos
Unidad II
                                                 Gestión de Procesos


   Caracterización del Interbloqueo


      Ejemplo:

      P = {P1, P2, P3}
      R = {R1, R2, R3, R4}
      F = {P1R1, P2R3, R1P2, R2P2, R2P1, R3P3}

      Instancias:
      • 1 de R1
      • 2 de R2
      • 1 de R3
      • 3 de R4.




Sistemas Operativos – Ingeniería Informática         Tema 5 Interbloqueos
Unidad II
                                               Gestión de Procesos


   Caracterización del Interbloqueo



      Ejemplo de Interbloqueo




Sistemas Operativos – Ingeniería Informática       Tema 5 Interbloqueos
Unidad II
                                                                                                    Gestión de Procesos


   Caracterización del Interbloqueo



     A     B     C          A        B   C     A        B    C   A    B       C   A   B         C       A    B         C



     R     S     T          R        S   T     R        S    T   R    S       T   R   S         T       R    S         T


          a)                    b)                 c)                d)                   e)                 f)



     A     B     C          A     B      C     A        B    C   A   B        C   A   B        C        A    B         C



     R     S     T          R        S   T     R        S    T   R   S        T   R   S        T        R    S         T


            a)                   b)                     c)               d)                e)                     f)




Sistemas Operativos – Ingeniería Informática                                                            Tema 5 Interbloqueos
Unidad II
                                                                          Gestión de Procesos



          Condiciones de Interbloqueo:


          1. Exclusión mutua: Sólo un proceso puede usar un recurso cada vez. Si
          otro proceso solicita ese recurso deberá esperar a que se libere el recurso.
          2. Retención y espera: Un proceso retiene unos recursos mientras
          espera que se le asignen otros.
          3. No expropiación: Un proceso no puede ser forzado a abandonar un
          recurso que retiene.
          4. Espera circular: Existe una cadena cerrada de procesos {P0, P1, ...,
          Pn}, cada uno de los cuales retiene, al menos, un recurso que necesita el
          siguiente proceso de la cadena (P0 espera por P1, P1 por P2, P2 por
          P3, ..., Pn por P0).




Sistemas Operativos – Ingeniería Informática                                  Tema 5 Interbloqueos
Unidad II
                                                                             Gestión de Procesos



      Estrategias para enfrentar los bloqueos:

              1. Ignorar todo el problema (Algoritmo del Avestruz)

              2. Prevención mediante la negación estructural de una de las cuatro
                   condiciones necesarias

              3. Evitarlos en forma dinámica mediante una cuidadosa asignación de
                   recursos. (Predicción)

              4. Detección y recuperación



                     1. El Algoritmo del Avestruz:
                          Esconder la cabeza en la arena para pretender que no existe
                          problema alguno
                     2. Prevención negando cualquiera de las condiciones



Sistemas Operativos – Ingeniería Informática                                     Tema 5 Interbloqueos
Unidad II
                                                                          Gestión de Procesos


     Estrategias para enfrentar los bloqueos:

      3. Predicción del Interbloqueo

            Concepto de estado seguro:


            El estado de un sistema viene dado por la asignación actual de recursos
            a los procesos.
            Estado seguro: estado en el que existe, al menos, una secuencia de
            asignación de recursos a los procesos que no lleva al interbloqueo.
            Estado inseguro: estado que no es seguro.
            Sólo concedemos recursos si el estado resultante tras la petición es
            seguro.




Sistemas Operativos – Ingeniería Informática                                  Tema 5 Interbloqueos
Unidad II
                                                                                        Gestión de Procesos


     Estrategias para enfrentar los bloqueos:

      3. Predicción del Interbloqueo

                    E   =    { 6 , 3 , 4 , 2 }             A =       {1 , 0 , 2 , 0 }



                                   A     3     0   1   1         A     1    1   0   0
                                   B     0     1   0   0         B     0    1   1   2
                                   C     1     1   1   0         C     3    1   0   0
                                   D     1     1   0   1         D     0    0   1   0
                                   E     0     0   0   0         E     2    1   1   0

                                Recursos Asignados           Recursos Necesarios

                                                                           Recursos:
                                                                           -Unidades de cinta
                                                                           -Plotter
                                                                           -Impresoras
                                                                           -CD-ROM
Sistemas Operativos – Ingeniería Informática                                                Tema 5 Interbloqueos
Unidad II
                                                                                         Gestión de Procesos


     Estrategias para enfrentar los bloqueos:

      3. Predicción del Interbloqueo
                                  A     B      C
        Existencia = { 10 , 5 , 7 }                            Disponibles {3 , 3 , 2 }

                                        A              B   C                    A    B        C


                        P1          0              1       0        P1      7       5         3

                        P2          2              0       0        P2      3       2         2

                        P3          3              0       2        P3      9       0         2

                        P4          2              1       1        P4      2       2         2

                        P5          0              0       2        P5      4       3         3


                             Recursos Asignados                          Recursos Máximos


                             P2 necesita 1 instancia del recurso A y 2 instancias del recurso C



Sistemas Operativos – Ingeniería Informática                                                 Tema 5 Interbloqueos
Unidad II
                                                                   Gestión de Procesos


     Estrategias para enfrentar los bloqueos:

      4. Detección y Recuperación del Interbloqueo


                 4.1 Detección:
                             a) Un recurso de cada tipo
                             b) Varios recursos de cada tipo
                 4.2 Recuperación:
                             a) Mediante apropiación
                             b) Mediante Rollback
                             c) Mediante eliminación de procesos




Sistemas Operativos – Ingeniería Informática                           Tema 5 Interbloqueos
Unidad II
                                                                   Gestión de Procesos


     Estrategias para enfrentar los bloqueos:

      4. Detección y Recuperación del Interbloqueo

            a) Detección de la forma un recurso de cada tipo




                                R              A       B



                                C              S   D   T       E



                                               F   U           V



                                               W   G




Sistemas Operativos – Ingeniería Informática                           Tema 5 Interbloqueos
Unidad II
                                                                                    Gestión de Procesos


     Estrategias para enfrentar los bloqueos:

      4. Detección y Recuperación del Interbloqueo

            b) Detección de la forma varios recursos de cada
            tipo
                         Recursos en Existencia                             Recursos disponibles


                         E=[4 2            3 1]                         A=[2 1 0 0]

                      Matriz de Asignación actual                           Matriz de Solicitudes


                              0       0        1   0                          2     0    0      1
                C=                                                R=
                              2       0        0   1                          1     0    1      0
                              0       1        2   0                          2     1    0      1
                                                       Recursos:
                                                       -Unidades de cinta
                                                       -Plotter
                                                       -Impresoras
                                                       -CD-ROM
Sistemas Operativos – Ingeniería Informática                                            Tema 5 Interbloqueos
Unidad II
                                                                        Gestión de Procesos


     Estrategias para enfrentar los bloqueos:

      4. Detección y Recuperación del Interbloqueo


                Recuperación del Interbloqueo:


                Un sistema que pretenda recuperarse del interbloqueo, debe
                invocar a un algoritmo de deteccióncuando lo considere
                oportuno (de manera más o menos periódica).


                Formas de intentar la recuperación:
                • Terminación de procesos.
                • Expropiación de recursos.




Sistemas Operativos – Ingeniería Informática                                 Tema 5 Interbloqueos
Unidad II
                                                                           Gestión de Procesos


     Estrategias para enfrentar los bloqueos:

      4. Detección y Recuperación del Interbloqueo

                Terminación de procesos:


                Abortando a todos los procesos implicados (muy drástico).
                Efecto negativo: se pierde el trabajo previamente realizado.
                Abortando a uno de los procesos ¿cuál?
                • El que más recursos libere.
                • El que menos tiempo lleve en ejecución.
                Retrocediendo la ejecución de algún proceso.
                Efecto negativo: muy complicado de implementar y necesita que
                elprograma esté diseñado para que pueda retroceder.




Sistemas Operativos – Ingeniería Informática                                   Tema 5 Interbloqueos
Unidad II
                                                                        Gestión de Procesos


     Estrategias para enfrentar los bloqueos:

      4. Detección y Recuperación del Interbloqueo
                Expropiación de recursos:
                Selección de la víctima:
                ¿Qué recursos y de qué procesos se expropian?
                Retroceso:
                Si expropiamos a un recurso de un proceso ¿qué hacemos con ese
                proceso?.
                Orden de los criterios de selección para expropiación de recursos:
                      1. Menor tiempo ya consumido en el procesador.
                      2. Menor número de salidas.
                      3. Menor tiempo restante estimado.
                      4. Menor número total de recursos ya asignados.
                      5. Prioridad más baja.


Sistemas Operativos – Ingeniería Informática                                Tema 5 Interbloqueos
Unidad II
                                                                      Gestión de Procesos


     Estrategias para enfrentar los bloqueos:

         Inanición:
         Para los dos casos de intento de recuperación del interbloqueo (terminación
         de procesos o expropiación de recursos) hay que tener cuidado de no
         provocar la inanición de procesos.


         ¿Qué es la inanición?
         Suponer tres procesos que acceden periódicamente a un recurso. Considera
         que P1 posee el recurso y que P2 y P3 están esperando. Cuando P1 haya
         ejecutado su sección crítica tanto P2 como P3 podrán solicitar el recurso.
         Supón que le le concede el acceso a P3 y que, antes de que termine su
         sección crítica, P1 solicita acceso de nuevo y así sucesivamente, se puede
         llegar a una situación en la que P2 nunca accede al recurso.

                                               Problema de los Filósofos Comensales


Sistemas Operativos – Ingeniería Informática                              Tema 5 Interbloqueos

More Related Content

What's hot

Alfabetos-Lenguajes y Automatas 1
Alfabetos-Lenguajes y Automatas 1Alfabetos-Lenguajes y Automatas 1
Alfabetos-Lenguajes y Automatas 1
Osiris Mirerus
 
Seguridad en los sistemas de archivos
Seguridad en los sistemas de archivosSeguridad en los sistemas de archivos
Seguridad en los sistemas de archivos
ANDRES SALAZAR
 
Interbloqueo sistemas operativos
Interbloqueo  sistemas operativosInterbloqueo  sistemas operativos
Interbloqueo sistemas operativos
Andy Lopez
 
Administración de procesos y del procesador
Administración de procesos y del procesadorAdministración de procesos y del procesador
Administración de procesos y del procesador
Fernando Camacho
 
Integridad Y Seguridad En Las Bases De Datos
Integridad Y Seguridad En Las Bases De DatosIntegridad Y Seguridad En Las Bases De Datos
Integridad Y Seguridad En Las Bases De Datos
Drakonis11
 

What's hot (20)

Control de concurrencias investigación
Control de concurrencias investigaciónControl de concurrencias investigación
Control de concurrencias investigación
 
Las diez principales amenazas para las bases de datos
Las diez principales amenazas para las bases de datosLas diez principales amenazas para las bases de datos
Las diez principales amenazas para las bases de datos
 
Procesos e hilos_parte_3
Procesos e hilos_parte_3Procesos e hilos_parte_3
Procesos e hilos_parte_3
 
Interbloqueo
InterbloqueoInterbloqueo
Interbloqueo
 
Alfabetos-Lenguajes y Automatas 1
Alfabetos-Lenguajes y Automatas 1Alfabetos-Lenguajes y Automatas 1
Alfabetos-Lenguajes y Automatas 1
 
Procesos e hilos- Parte 1
Procesos e hilos- Parte 1Procesos e hilos- Parte 1
Procesos e hilos- Parte 1
 
Arquitectura 3 Capas
Arquitectura 3 CapasArquitectura 3 Capas
Arquitectura 3 Capas
 
Seguridad en los sistemas de archivos
Seguridad en los sistemas de archivosSeguridad en los sistemas de archivos
Seguridad en los sistemas de archivos
 
Interbloqueos
InterbloqueosInterbloqueos
Interbloqueos
 
Interbloqueo sistemas operativos
Interbloqueo  sistemas operativosInterbloqueo  sistemas operativos
Interbloqueo sistemas operativos
 
Planificacion de procesos
Planificacion de procesosPlanificacion de procesos
Planificacion de procesos
 
Prueba de Caja Blanca
Prueba de Caja BlancaPrueba de Caja Blanca
Prueba de Caja Blanca
 
Modulo I: Arquitectura de Seguridad Informática
Modulo I: Arquitectura de Seguridad InformáticaModulo I: Arquitectura de Seguridad Informática
Modulo I: Arquitectura de Seguridad Informática
 
Administración de procesos y del procesador
Administración de procesos y del procesadorAdministración de procesos y del procesador
Administración de procesos y del procesador
 
Arquitectura flujo de datos(filtros y tuberías)
Arquitectura flujo de datos(filtros y tuberías)Arquitectura flujo de datos(filtros y tuberías)
Arquitectura flujo de datos(filtros y tuberías)
 
Tecnicas de Administracion de Memoria
Tecnicas de Administracion de MemoriaTecnicas de Administracion de Memoria
Tecnicas de Administracion de Memoria
 
Herramientas case
Herramientas caseHerramientas case
Herramientas case
 
Integridad Y Seguridad En Las Bases De Datos
Integridad Y Seguridad En Las Bases De DatosIntegridad Y Seguridad En Las Bases De Datos
Integridad Y Seguridad En Las Bases De Datos
 
control de concurrencia
control de concurrenciacontrol de concurrencia
control de concurrencia
 
métodos cifrado
métodos cifradométodos cifrado
métodos cifrado
 

Similar to Clase 5 -_interbloqueo

Temas de exposiciones teoria de sistemas
Temas de exposiciones teoria de sistemasTemas de exposiciones teoria de sistemas
Temas de exposiciones teoria de sistemas
Oswaldo Hechenleitner
 
⭐⭐⭐⭐⭐ SOLUCIÓN EVALUACIÓN SISTEMAS EMBEBIDOS, 2do Parcial (2020 PAO 2)
⭐⭐⭐⭐⭐ SOLUCIÓN EVALUACIÓN SISTEMAS EMBEBIDOS, 2do Parcial (2020 PAO 2)⭐⭐⭐⭐⭐ SOLUCIÓN EVALUACIÓN SISTEMAS EMBEBIDOS, 2do Parcial (2020 PAO 2)
⭐⭐⭐⭐⭐ SOLUCIÓN EVALUACIÓN SISTEMAS EMBEBIDOS, 2do Parcial (2020 PAO 2)
Victor Asanza
 
Taller interbloqueo
Taller interbloqueo Taller interbloqueo
Taller interbloqueo
Vero Mateus
 
Unidad 2 sistemas operativos 2011
Unidad 2  sistemas operativos 2011Unidad 2  sistemas operativos 2011
Unidad 2 sistemas operativos 2011
Abimael hernandez
 
CONCEPTOS AVANZADOS DE SISTEMAS OPERATIVOS
CONCEPTOS AVANZADOS DE SISTEMAS OPERATIVOSCONCEPTOS AVANZADOS DE SISTEMAS OPERATIVOS
CONCEPTOS AVANZADOS DE SISTEMAS OPERATIVOS
Jose Alvino Utp
 

Similar to Clase 5 -_interbloqueo (20)

Temas de exposiciones teoria de sistemas
Temas de exposiciones teoria de sistemasTemas de exposiciones teoria de sistemas
Temas de exposiciones teoria de sistemas
 
⭐⭐⭐⭐⭐ SOLUCIÓN EVALUACIÓN SISTEMAS EMBEBIDOS, 2do Parcial (2020 PAO 2)
⭐⭐⭐⭐⭐ SOLUCIÓN EVALUACIÓN SISTEMAS EMBEBIDOS, 2do Parcial (2020 PAO 2)⭐⭐⭐⭐⭐ SOLUCIÓN EVALUACIÓN SISTEMAS EMBEBIDOS, 2do Parcial (2020 PAO 2)
⭐⭐⭐⭐⭐ SOLUCIÓN EVALUACIÓN SISTEMAS EMBEBIDOS, 2do Parcial (2020 PAO 2)
 
Taller interbloqueo
Taller interbloqueo Taller interbloqueo
Taller interbloqueo
 
Comunicación y Sincronizacion de Procesos
Comunicación y Sincronizacion de ProcesosComunicación y Sincronizacion de Procesos
Comunicación y Sincronizacion de Procesos
 
Unidad 2 sistemas operativos 2011
Unidad 2  sistemas operativos 2011Unidad 2  sistemas operativos 2011
Unidad 2 sistemas operativos 2011
 
Descripcion y control de procesos
Descripcion y control de procesosDescripcion y control de procesos
Descripcion y control de procesos
 
Sistemas operativos II
Sistemas operativos IISistemas operativos II
Sistemas operativos II
 
Sistemas operativos 2
Sistemas operativos 2Sistemas operativos 2
Sistemas operativos 2
 
Sistemas Operativos ii
Sistemas  Operativos iiSistemas  Operativos ii
Sistemas Operativos ii
 
Sistemas operativos ii
Sistemas operativos iiSistemas operativos ii
Sistemas operativos ii
 
Sistemas operativos ii
Sistemas operativos iiSistemas operativos ii
Sistemas operativos ii
 
So1 Prog
So1 ProgSo1 Prog
So1 Prog
 
Sistemas operativos 05 2010
Sistemas operativos 05   2010Sistemas operativos 05   2010
Sistemas operativos 05 2010
 
Tema3 procesos
Tema3 procesos Tema3 procesos
Tema3 procesos
 
CONCEPTOS AVANZADOS DE SISTEMAS OPERATIVOS
CONCEPTOS AVANZADOS DE SISTEMAS OPERATIVOSCONCEPTOS AVANZADOS DE SISTEMAS OPERATIVOS
CONCEPTOS AVANZADOS DE SISTEMAS OPERATIVOS
 
Intro1
Intro1Intro1
Intro1
 
Kelly salina sistemas operativos
Kelly salina sistemas operativosKelly salina sistemas operativos
Kelly salina sistemas operativos
 
Kelly
KellyKelly
Kelly
 
Kelly salina
Kelly salinaKelly salina
Kelly salina
 
Kelly
KellyKelly
Kelly
 

Clase 5 -_interbloqueo

  • 1. Sincronización de procesos 4.1. Condiciones de competencia. 4.1. Secciones Críticas. 4.2. Exclusión mutua. Tema 4 4.3. Dormir y despertar. 4.4. Semáforos. 4.5. Contadores de eventos. 4.6. Transferencia de mensajes. 4.7. Monitores. Interbloqueos. 5.1 Recursos y bloqueos 5.1.1 Definición de recurso. 5.1.2 Bloqueos y condiciones de competencia. 5.1.3 Modelación de bloqueos. Tema 5 5.2 Métodos para tratar los bloqueos 5.2.1 Algoritmo del Avestruz 5.2.2 Detección y recuperación de bloqueos. 5.2.3 Evasión de bloqueos. 5.2.4 Prevención de bloqueos. Sistemas Operativos – Ingeniería Informática
  • 2. Unidad II Gestión de Procesos Interbloqueo Problema que afecta a procesos concurrentes que utilizan recursos en un sistema. Esquema de interacción procesos-recursos: • Un proceso, a través de una llamada al sistema, solicita recursos. • Usa esos recursos, en caso de que estén disponibles. • A través de una llamada al sistema, el proceso libera los recursos cuando ya no los necesita. Ejemplo: Considere dos procesos y dos recursos. Supón que cada proceso necesita acceder a ambos recursos para llevar a cabo una parte de su función. Puede suceder que el sistema operativo asigne R1 a P1 y R2 a P2. Cada proceso está esperando uno de los dos recursos. Ninguno liberará el recurso que posee hasta que adquiera el otro y realice su tarea. Sistemas Operativos – Ingeniería Informática Tema 5 Interbloqueos
  • 3. Unidad II Gestión de Procesos Interbloqueo El problema del interbloqueo: E Situación de un conjunto de procesos bloqueados, cada uno de ellos esperando por un recurso que retiene otro proceso de ese conjunto. • Ningún proceso del conjunto puede avanzar. • Interbloqueo, bloqueo mutuo, abrazo mortal (deadlock). Sistemas Operativos – Ingeniería Informática Tema 5 Interbloqueos
  • 4. Unidad II Gestión de Procesos Caracterización del Interbloqueo Grafo de asignación de recursos: Sirve para describir el interbloqueo, consta de un conjunto de vértices y un conjunto de flechas. Vértices: procesos y recursos. Flechas: • De asignación (Rj→Pi), indican que el recurso j se asignóal proceso i. • De solicitud (Pi→Rj), indican que el proceso i solicita el recurso j. Instancias: Número de ejemplares que hay de cada recurso. Sistemas Operativos – Ingeniería Informática Tema 5 Interbloqueos
  • 5. Unidad II Gestión de Procesos Caracterización del Interbloqueo Ejemplo: P = {P1, P2, P3} R = {R1, R2, R3, R4} F = {P1R1, P2R3, R1P2, R2P2, R2P1, R3P3} Instancias: • 1 de R1 • 2 de R2 • 1 de R3 • 3 de R4. Sistemas Operativos – Ingeniería Informática Tema 5 Interbloqueos
  • 6. Unidad II Gestión de Procesos Caracterización del Interbloqueo Ejemplo de Interbloqueo Sistemas Operativos – Ingeniería Informática Tema 5 Interbloqueos
  • 7. Unidad II Gestión de Procesos Caracterización del Interbloqueo A B C A B C A B C A B C A B C A B C R S T R S T R S T R S T R S T R S T a) b) c) d) e) f) A B C A B C A B C A B C A B C A B C R S T R S T R S T R S T R S T R S T a) b) c) d) e) f) Sistemas Operativos – Ingeniería Informática Tema 5 Interbloqueos
  • 8. Unidad II Gestión de Procesos Condiciones de Interbloqueo: 1. Exclusión mutua: Sólo un proceso puede usar un recurso cada vez. Si otro proceso solicita ese recurso deberá esperar a que se libere el recurso. 2. Retención y espera: Un proceso retiene unos recursos mientras espera que se le asignen otros. 3. No expropiación: Un proceso no puede ser forzado a abandonar un recurso que retiene. 4. Espera circular: Existe una cadena cerrada de procesos {P0, P1, ..., Pn}, cada uno de los cuales retiene, al menos, un recurso que necesita el siguiente proceso de la cadena (P0 espera por P1, P1 por P2, P2 por P3, ..., Pn por P0). Sistemas Operativos – Ingeniería Informática Tema 5 Interbloqueos
  • 9. Unidad II Gestión de Procesos Estrategias para enfrentar los bloqueos: 1. Ignorar todo el problema (Algoritmo del Avestruz) 2. Prevención mediante la negación estructural de una de las cuatro condiciones necesarias 3. Evitarlos en forma dinámica mediante una cuidadosa asignación de recursos. (Predicción) 4. Detección y recuperación 1. El Algoritmo del Avestruz: Esconder la cabeza en la arena para pretender que no existe problema alguno 2. Prevención negando cualquiera de las condiciones Sistemas Operativos – Ingeniería Informática Tema 5 Interbloqueos
  • 10. Unidad II Gestión de Procesos Estrategias para enfrentar los bloqueos: 3. Predicción del Interbloqueo Concepto de estado seguro: El estado de un sistema viene dado por la asignación actual de recursos a los procesos. Estado seguro: estado en el que existe, al menos, una secuencia de asignación de recursos a los procesos que no lleva al interbloqueo. Estado inseguro: estado que no es seguro. Sólo concedemos recursos si el estado resultante tras la petición es seguro. Sistemas Operativos – Ingeniería Informática Tema 5 Interbloqueos
  • 11. Unidad II Gestión de Procesos Estrategias para enfrentar los bloqueos: 3. Predicción del Interbloqueo E = { 6 , 3 , 4 , 2 } A = {1 , 0 , 2 , 0 } A 3 0 1 1 A 1 1 0 0 B 0 1 0 0 B 0 1 1 2 C 1 1 1 0 C 3 1 0 0 D 1 1 0 1 D 0 0 1 0 E 0 0 0 0 E 2 1 1 0 Recursos Asignados Recursos Necesarios Recursos: -Unidades de cinta -Plotter -Impresoras -CD-ROM Sistemas Operativos – Ingeniería Informática Tema 5 Interbloqueos
  • 12. Unidad II Gestión de Procesos Estrategias para enfrentar los bloqueos: 3. Predicción del Interbloqueo A B C Existencia = { 10 , 5 , 7 } Disponibles {3 , 3 , 2 } A B C A B C P1 0 1 0 P1 7 5 3 P2 2 0 0 P2 3 2 2 P3 3 0 2 P3 9 0 2 P4 2 1 1 P4 2 2 2 P5 0 0 2 P5 4 3 3 Recursos Asignados Recursos Máximos P2 necesita 1 instancia del recurso A y 2 instancias del recurso C Sistemas Operativos – Ingeniería Informática Tema 5 Interbloqueos
  • 13. Unidad II Gestión de Procesos Estrategias para enfrentar los bloqueos: 4. Detección y Recuperación del Interbloqueo 4.1 Detección: a) Un recurso de cada tipo b) Varios recursos de cada tipo 4.2 Recuperación: a) Mediante apropiación b) Mediante Rollback c) Mediante eliminación de procesos Sistemas Operativos – Ingeniería Informática Tema 5 Interbloqueos
  • 14. Unidad II Gestión de Procesos Estrategias para enfrentar los bloqueos: 4. Detección y Recuperación del Interbloqueo a) Detección de la forma un recurso de cada tipo R A B C S D T E F U V W G Sistemas Operativos – Ingeniería Informática Tema 5 Interbloqueos
  • 15. Unidad II Gestión de Procesos Estrategias para enfrentar los bloqueos: 4. Detección y Recuperación del Interbloqueo b) Detección de la forma varios recursos de cada tipo Recursos en Existencia Recursos disponibles E=[4 2 3 1] A=[2 1 0 0] Matriz de Asignación actual Matriz de Solicitudes 0 0 1 0 2 0 0 1 C= R= 2 0 0 1 1 0 1 0 0 1 2 0 2 1 0 1 Recursos: -Unidades de cinta -Plotter -Impresoras -CD-ROM Sistemas Operativos – Ingeniería Informática Tema 5 Interbloqueos
  • 16. Unidad II Gestión de Procesos Estrategias para enfrentar los bloqueos: 4. Detección y Recuperación del Interbloqueo Recuperación del Interbloqueo: Un sistema que pretenda recuperarse del interbloqueo, debe invocar a un algoritmo de deteccióncuando lo considere oportuno (de manera más o menos periódica). Formas de intentar la recuperación: • Terminación de procesos. • Expropiación de recursos. Sistemas Operativos – Ingeniería Informática Tema 5 Interbloqueos
  • 17. Unidad II Gestión de Procesos Estrategias para enfrentar los bloqueos: 4. Detección y Recuperación del Interbloqueo Terminación de procesos: Abortando a todos los procesos implicados (muy drástico). Efecto negativo: se pierde el trabajo previamente realizado. Abortando a uno de los procesos ¿cuál? • El que más recursos libere. • El que menos tiempo lleve en ejecución. Retrocediendo la ejecución de algún proceso. Efecto negativo: muy complicado de implementar y necesita que elprograma esté diseñado para que pueda retroceder. Sistemas Operativos – Ingeniería Informática Tema 5 Interbloqueos
  • 18. Unidad II Gestión de Procesos Estrategias para enfrentar los bloqueos: 4. Detección y Recuperación del Interbloqueo Expropiación de recursos: Selección de la víctima: ¿Qué recursos y de qué procesos se expropian? Retroceso: Si expropiamos a un recurso de un proceso ¿qué hacemos con ese proceso?. Orden de los criterios de selección para expropiación de recursos: 1. Menor tiempo ya consumido en el procesador. 2. Menor número de salidas. 3. Menor tiempo restante estimado. 4. Menor número total de recursos ya asignados. 5. Prioridad más baja. Sistemas Operativos – Ingeniería Informática Tema 5 Interbloqueos
  • 19. Unidad II Gestión de Procesos Estrategias para enfrentar los bloqueos: Inanición: Para los dos casos de intento de recuperación del interbloqueo (terminación de procesos o expropiación de recursos) hay que tener cuidado de no provocar la inanición de procesos. ¿Qué es la inanición? Suponer tres procesos que acceden periódicamente a un recurso. Considera que P1 posee el recurso y que P2 y P3 están esperando. Cuando P1 haya ejecutado su sección crítica tanto P2 como P3 podrán solicitar el recurso. Supón que le le concede el acceso a P3 y que, antes de que termine su sección crítica, P1 solicita acceso de nuevo y así sucesivamente, se puede llegar a una situación en la que P2 nunca accede al recurso. Problema de los Filósofos Comensales Sistemas Operativos – Ingeniería Informática Tema 5 Interbloqueos