SlideShare una empresa de Scribd logo
ESCUELA COLOMBIANA DE CARRERAS INDUSTRIALES
                                                                                     SISTEMAS OPERATIVOS
                                    DECANATURA DE INGENIERÍA
                                   Ciencias de la Computación                        DOCENTE
                                    e Ingeniería de Sistemas                         OSCAR W. MENDOZA M.
                                    TALLER INTERBLOQUEO




Integrantes:

Lourdes Castillo
Daniel Alejandro Jiménez
Erick Duvan Saavedra
Miguel Buitrago

Defina interbloqueo:

Es el bloqueo permanente de un conjunto de procesos o hilos de ejecución en un sistema concurrente
que compiten por los recursos del sistema o la comunicación entre ellos.


Describa las cuatro condiciones para el interbloqueo:

   1) EXCLUSION MUTUA:
      Cada recurso está asignado a un único proceso o está disponible.
      Sólo un proceso puede usar un recurso simultáneamente.
   2) RETENER Y ESPERAR:
      Debe haber al menos un proceso que retenga un recurso y que haya pedido algún otro recurso
      que posea otro proceso, por lo que estará esperando.
   3) NO APROPIACION:
      El sistema no puede arrebatar los recursos que ha asignado previamente a los procesos. En
      otras palabras, un proceso mantiene retenido un recurso hasta que deja de utilizarlo y lo librera
      voluntariamente.
   4) ESPERA CIRCULAR:
      Existe una cadena cerrada de procesos, cada uno de los cuales retiene, al menos, un recurso
      que necesita el siguiente proceso de la cadena.
      Debe existir un conjunto de procesos (P1, P2,P3…) tal que P1 se encuentra esperando un
      recurso que tiene P2, P2 espera un recurso que tiene P3…

Determine una estrategia para la prevención de cada causa del interbloqueo:

   a) EXCLUSION MUTUA: Esto se refiere a que ningún proceso pueda tener acceso exclusivo a
      un recurso.

   b) RETENER Y ESPERAR: La condición de posesión y espera puede ser eliminada haciendo
      que los procesos soliciten todos los recursos que van a necesitar antes de empezar.

   c) NO APROPIACION: Un proceso que retiene ciertos recursos se le niega una nueva solicitud,
      dicho proceso deberá liberar sus recursos anteriores y solicitarlos de nuevo cuando sea
      necesario junto con el recurso que iba a solicitar.
ESCUELA COLOMBIANA DE CARRERAS INDUSTRIALES
                                                                                     SISTEMAS OPERATIVOS
                                     DECANATURA DE INGENIERÍA
                                    Ciencias de la Computación                       DOCENTE
                                     e Ingeniería de Sistemas                        OSCAR W. MENDOZA M.
                                     TALLER INTERBLOQUEO


        La otra forma de prevenirse es si un proceso solicita un recurso que actualmente está retenido
       por otro proceso, el sistema operativo puede expulsar al segundo proceso y exigirle que libere
       sus recursos este funciona si no hay dos procesos que tengan la misma prioridad


   a) ESPERA CIRCULAR: puede prevenirse definiendo una ordenación lineal de los tipos de
      recursos por ejemplo, si un proceso se le han asignado recursos de tipo R entonces solo podrá
      realizar peticiones posteriores sobre los recursos de los tipos siguientes a R en la ordenación.
      Esta técnica es ineficiente pues retarda procesos y deniega accesos a recursos
      innecesariamente.


Determine las estrategias para la detección del interbloqueo:

Una posibilidad de detectar un interbloqueo es monitorear cada cierto tiempo el estado de los recursos.

Cada vez que se solicita o se devuelve un recurso, se actualiza el estado de los recursos y se hace una
verificación para observar si existe algún ciclo.

Determine en detalle la estrategia integrada del interbloqueo de Silberschatz y Galván:

   1. Agrupar los recursos en un número de clases diferentes.
   2. Usar la estrategia de ordenación lineal.
   3. Dentro de cada clase de recursos emplear el algoritmo más apropiado para dicha clase.


Describa el problema de la cena de los filósofos y sus diferentes soluciones:

El problema consiste en que hay 5 filósofos y un plato de espagueti, del que cada uno va a tomar una
parte para comer. Para poder comer necesitan dos tenedores, pero cada filósofo tiene un solo tenedor,
lo que necesario que tome el tenedor del compañero de la derecha generando un interbloqueo ya que
ninguno podría tomar el otro tenedor del compañero porque lo tiene ocupado.

Soluciones:

Un semáforo que les indique a los filósofos tomar el tenedor de la derecha y luego el de la izquierda,
pero no es viable porque si se rigen por el mismos semáforo ninguno tomaría el segundo tenedor y
generaría un interbloqueo.

Colocar cinco tenedores más para que cada filósofo tenga dos tenedores.

Enseñarles a comer con un solo tenedor.
ESCUELA COLOMBIANA DE CARRERAS INDUSTRIALES
                                                                                      SISTEMAS OPERATIVOS
                                     DECANATURA DE INGENIERÍA
                                    Ciencias de la Computación                        DOCENTE
                                     e Ingeniería de Sistemas                         OSCAR W. MENDOZA M.
                                     TALLER INTERBLOQUEO


Contratar a un mesero que haga entrar a cuatro filósofos y garantizar que al menos uno tenga acceso a
los dos tenedores.


Los medios para la comunicación entre procesos en UNIX son los Tubos, los mensajes y la
memoria compartida; Describa cada uno de estos medios:


Tubos: Es un buffer circular que permite a dos procesos comunicarse, donde hay una cola, donde el
primero en llegar es el primero en salir, un proceso lee y el otro escribe.
Cuando se crea un tubo se le da un tamaño fijo en bytes cuando un proceso intenta escribir en el tubo
la solicitud se escritura se ejecuta inmediatamente, si hay suficiente espacio, si no hay el suficiente
espacio el proceso se bloquea. Si un proceso intenta leer más byte de los que tiene en el tubo este se
bloquea. El sistema operativo se encarga de que al tubo solo pueda acceder un proceso.
Hay dos tipos de tubos: con nombre y sin nombre. Sólo procesos afines pueden compartir tubos sin
nombre, mientras que los procesos no afines sólo pueden compartir tubos con nombre.

Mensajes: Es un bloque de texto con un tipo asociado.
Cada proceso tiene asociado una cola de mensajes que funciona como un buzón de correos.
El emisor de mensajes especifica el tipo de mensaje en cada envió y el receptos puede utilizar este
dato como criterio de selección. El receptor puede recuperar los mensajes tanto en el orden fifo como
por el tipo.
Si un proceso intenta leer de una cola vacía se suspenderá pero si intenta leer de cierto tipo y falla el
proceso no se suspenderá.

Memoria Compartida: Es la forma más rápida de comunicación entre procesos La memoria
compartida es un bloque común de memoria virtual compartido por varios procesos.
Los permisos de un proceso son solo lectura o lectura – escritura según el proceso que sea las
restricciones de exclusión mutua no forman parte del servicio de memoria compartida estas las
suministra el proceso que hace uso de la memoria compartida.


En UNIX los semáforos y las señale se utilizan para provocar acciones en otros procesos;
Describa la forma como lo hace cada uno de ellos:

Las señales: son un mecanismo de comunicación entre procesos. Toda señal se identifica dentro
mediante un número entero, habiendo un total de 64 en sistemas basados en Linux.

Los semáforos: con un mecanismo de sincronización entre procesos, estos nos permiten asistir al
planificador del sistema operativo en su toma de decisiones, de manera que nos permite sincronizar la
ejecución de dos o más procesos.

Más contenido relacionado

DOC
Taller Interbloqueo
DOC
Taller interbloqueo
DOC
Taller interbloqueo
DOC
Taller interbloqueo
DOC
Taller concurrencia y exclusión mutua.
PDF
Interbloqueo
DOC
Taller Concurrencia Y Exclusion Mutua 1
PPT
Clase 5 -_interbloqueo
Taller Interbloqueo
Taller interbloqueo
Taller interbloqueo
Taller interbloqueo
Taller concurrencia y exclusión mutua.
Interbloqueo
Taller Concurrencia Y Exclusion Mutua 1
Clase 5 -_interbloqueo

Similar a Taller Interbloqueo (20)

PDF
Plan de estudios 5to
PDF
Sistemas operativos i li
PDF
Sistemas operativos i li
PDF
Sistemas operativos 1
PDF
Plan de estudios
PDF
Sistemas operativos 1
PPT
Tema5
PDF
358pc
PPT
Bloqueos _
PDF
Fundamento de sistema operativo
PDF
2-proceso;kja;slkdjfl;kajsdlklasjdlfkjasldjflkj
DOC
Sistemas operativos trabajo
DOCX
Temas de exposiciones teoria de sistemas
PPTX
TIPOS DE SOFTWARE
PDF
Stallings - Sistemas operativos.pdf
PDF
SO William Stalligs.pdf
PPT
Procesos y procesadores grupo # 5
PPT
Procesos y procesadores grupo # 5
PDF
Programación pararelo
PPT
Trabajode Sisope
Plan de estudios 5to
Sistemas operativos i li
Sistemas operativos i li
Sistemas operativos 1
Plan de estudios
Sistemas operativos 1
Tema5
358pc
Bloqueos _
Fundamento de sistema operativo
2-proceso;kja;slkdjfl;kajsdlklasjdlfkjasldjflkj
Sistemas operativos trabajo
Temas de exposiciones teoria de sistemas
TIPOS DE SOFTWARE
Stallings - Sistemas operativos.pdf
SO William Stalligs.pdf
Procesos y procesadores grupo # 5
Procesos y procesadores grupo # 5
Programación pararelo
Trabajode Sisope
Publicidad

Más de Miguel Rey (6)

DOC
Taller interbloqueo
PPTX
Carga y montaje
DOCX
Correccion del parcial segundo corte
DOC
Taller interbloqueo
DOC
Taller interbloqueo
PDF
Rotativo
Taller interbloqueo
Carga y montaje
Correccion del parcial segundo corte
Taller interbloqueo
Taller interbloqueo
Rotativo
Publicidad

Taller Interbloqueo

  • 1. ESCUELA COLOMBIANA DE CARRERAS INDUSTRIALES SISTEMAS OPERATIVOS DECANATURA DE INGENIERÍA Ciencias de la Computación DOCENTE e Ingeniería de Sistemas OSCAR W. MENDOZA M. TALLER INTERBLOQUEO Integrantes: Lourdes Castillo Daniel Alejandro Jiménez Erick Duvan Saavedra Miguel Buitrago Defina interbloqueo: Es el bloqueo permanente de un conjunto de procesos o hilos de ejecución en un sistema concurrente que compiten por los recursos del sistema o la comunicación entre ellos. Describa las cuatro condiciones para el interbloqueo: 1) EXCLUSION MUTUA: Cada recurso está asignado a un único proceso o está disponible. Sólo un proceso puede usar un recurso simultáneamente. 2) RETENER Y ESPERAR: Debe haber al menos un proceso que retenga un recurso y que haya pedido algún otro recurso que posea otro proceso, por lo que estará esperando. 3) NO APROPIACION: El sistema no puede arrebatar los recursos que ha asignado previamente a los procesos. En otras palabras, un proceso mantiene retenido un recurso hasta que deja de utilizarlo y lo librera voluntariamente. 4) ESPERA CIRCULAR: Existe una cadena cerrada de procesos, cada uno de los cuales retiene, al menos, un recurso que necesita el siguiente proceso de la cadena. Debe existir un conjunto de procesos (P1, P2,P3…) tal que P1 se encuentra esperando un recurso que tiene P2, P2 espera un recurso que tiene P3… Determine una estrategia para la prevención de cada causa del interbloqueo: a) EXCLUSION MUTUA: Esto se refiere a que ningún proceso pueda tener acceso exclusivo a un recurso. b) RETENER Y ESPERAR: La condición de posesión y espera puede ser eliminada haciendo que los procesos soliciten todos los recursos que van a necesitar antes de empezar. c) NO APROPIACION: Un proceso que retiene ciertos recursos se le niega una nueva solicitud, dicho proceso deberá liberar sus recursos anteriores y solicitarlos de nuevo cuando sea necesario junto con el recurso que iba a solicitar.
  • 2. ESCUELA COLOMBIANA DE CARRERAS INDUSTRIALES SISTEMAS OPERATIVOS DECANATURA DE INGENIERÍA Ciencias de la Computación DOCENTE e Ingeniería de Sistemas OSCAR W. MENDOZA M. TALLER INTERBLOQUEO La otra forma de prevenirse es si un proceso solicita un recurso que actualmente está retenido por otro proceso, el sistema operativo puede expulsar al segundo proceso y exigirle que libere sus recursos este funciona si no hay dos procesos que tengan la misma prioridad a) ESPERA CIRCULAR: puede prevenirse definiendo una ordenación lineal de los tipos de recursos por ejemplo, si un proceso se le han asignado recursos de tipo R entonces solo podrá realizar peticiones posteriores sobre los recursos de los tipos siguientes a R en la ordenación. Esta técnica es ineficiente pues retarda procesos y deniega accesos a recursos innecesariamente. Determine las estrategias para la detección del interbloqueo: Una posibilidad de detectar un interbloqueo es monitorear cada cierto tiempo el estado de los recursos. Cada vez que se solicita o se devuelve un recurso, se actualiza el estado de los recursos y se hace una verificación para observar si existe algún ciclo. Determine en detalle la estrategia integrada del interbloqueo de Silberschatz y Galván: 1. Agrupar los recursos en un número de clases diferentes. 2. Usar la estrategia de ordenación lineal. 3. Dentro de cada clase de recursos emplear el algoritmo más apropiado para dicha clase. Describa el problema de la cena de los filósofos y sus diferentes soluciones: El problema consiste en que hay 5 filósofos y un plato de espagueti, del que cada uno va a tomar una parte para comer. Para poder comer necesitan dos tenedores, pero cada filósofo tiene un solo tenedor, lo que necesario que tome el tenedor del compañero de la derecha generando un interbloqueo ya que ninguno podría tomar el otro tenedor del compañero porque lo tiene ocupado. Soluciones: Un semáforo que les indique a los filósofos tomar el tenedor de la derecha y luego el de la izquierda, pero no es viable porque si se rigen por el mismos semáforo ninguno tomaría el segundo tenedor y generaría un interbloqueo. Colocar cinco tenedores más para que cada filósofo tenga dos tenedores. Enseñarles a comer con un solo tenedor.
  • 3. ESCUELA COLOMBIANA DE CARRERAS INDUSTRIALES SISTEMAS OPERATIVOS DECANATURA DE INGENIERÍA Ciencias de la Computación DOCENTE e Ingeniería de Sistemas OSCAR W. MENDOZA M. TALLER INTERBLOQUEO Contratar a un mesero que haga entrar a cuatro filósofos y garantizar que al menos uno tenga acceso a los dos tenedores. Los medios para la comunicación entre procesos en UNIX son los Tubos, los mensajes y la memoria compartida; Describa cada uno de estos medios: Tubos: Es un buffer circular que permite a dos procesos comunicarse, donde hay una cola, donde el primero en llegar es el primero en salir, un proceso lee y el otro escribe. Cuando se crea un tubo se le da un tamaño fijo en bytes cuando un proceso intenta escribir en el tubo la solicitud se escritura se ejecuta inmediatamente, si hay suficiente espacio, si no hay el suficiente espacio el proceso se bloquea. Si un proceso intenta leer más byte de los que tiene en el tubo este se bloquea. El sistema operativo se encarga de que al tubo solo pueda acceder un proceso. Hay dos tipos de tubos: con nombre y sin nombre. Sólo procesos afines pueden compartir tubos sin nombre, mientras que los procesos no afines sólo pueden compartir tubos con nombre. Mensajes: Es un bloque de texto con un tipo asociado. Cada proceso tiene asociado una cola de mensajes que funciona como un buzón de correos. El emisor de mensajes especifica el tipo de mensaje en cada envió y el receptos puede utilizar este dato como criterio de selección. El receptor puede recuperar los mensajes tanto en el orden fifo como por el tipo. Si un proceso intenta leer de una cola vacía se suspenderá pero si intenta leer de cierto tipo y falla el proceso no se suspenderá. Memoria Compartida: Es la forma más rápida de comunicación entre procesos La memoria compartida es un bloque común de memoria virtual compartido por varios procesos. Los permisos de un proceso son solo lectura o lectura – escritura según el proceso que sea las restricciones de exclusión mutua no forman parte del servicio de memoria compartida estas las suministra el proceso que hace uso de la memoria compartida. En UNIX los semáforos y las señale se utilizan para provocar acciones en otros procesos; Describa la forma como lo hace cada uno de ellos: Las señales: son un mecanismo de comunicación entre procesos. Toda señal se identifica dentro mediante un número entero, habiendo un total de 64 en sistemas basados en Linux. Los semáforos: con un mecanismo de sincronización entre procesos, estos nos permiten asistir al planificador del sistema operativo en su toma de decisiones, de manera que nos permite sincronizar la ejecución de dos o más procesos.