1 of 27

Tema

Bloqueos Interbloqueos

Wilfrido de Paula

2 of 27

Bloqueo

  • Suponen necesidades contradictorias de recursos por parte de dos o más procesos.
  • El bloqueo ocurre cuando un proceso monopoliza el acceso a un recurso y requiere otro recurso que ha sido ya asignado a un segundo proceso que a su vez necesita el recurso monopolizado por un primer proceso.

3 of 27

Interbloqueo

  • El interbloqueo también llamado deadlock, bloqueo mutuo o abrazo mortal, es el bloqueo permanente de un conjunto de procesos que o bien compiten por recursos del sistema, o bien se comunican entre ellos.

4 of 27

5 of 27

6 of 27

CONDICIONES PARA UN BLOQUEO

  • Deben darse 4 condiciones para que se produzca interbloqueo:�Exclusión mutua, es decir, que existan recursos que deban ser usados en exclusión.�Condición de retener y esperar, es decir, un proceso retiene los recursos mientras está a la espera de que se le asignen otros recursos.�No apropiación: un proceso que tiene asignados una serie de recursos, no se le puede apropiar esos recursos.�Espera circular: hay una cadena de procesos en la cual cada uno tiene asignados uno o más recursos que son requeridos por el siguiente proceso de la cadena.
  • Las condiciones 1, 2 y 3 son necesarias pero no suficientes. Se deben dar las cuatro (necesarias y suficientes)
  • Las tres primeras son decisiones del diseño del sistema operativo. Mientras que la cuarta es una circunstancia que se puede dar.

7 of 27

METODOS PARA RESOLVER BLOQUEOS

  • En la prevención del interbloqueo interesa ajustar el sistema para eliminar toda posibilidad de que ocurra un bloqueo mutuo. La prevención suele funcionar pero sus métodos ocasionan, en general, un aprovechamiento pobre de los recursos. No obstante, estos métodos se utilizan con frecuencia.
  • Las técnicas que tienen como objetivo evitar el interbloqueo imponen condiciones menos atractivas que en la prevención, para tratar de obtener un aprovechamiento de los recursos. No elimina como las técnicas de prevención todas las posibilidades de que se produzca un bloqueo mutuo, pero se esquiva cuanto está a punto de suceder 

8 of 27

En la figura del ejemplo, podemos ver dos procesos diferentes (A y B), cada uno con un recurso diferente asignado (R1 y R2). En este ejemplo clásico de bloqueo mutuo, es fácilmente visible la condición de espera circular en la que los procesos se encuentran, donde cada uno solicita un recurso que está asignado a otro proceso.

9 of 27

PREVENCION DE UN BLOQUEO

  • Asegurando que al menos una de las condiciones para bloqueo no se cumpla, podemos prevenir su ocurrencia.

10 of 27

Ventajas y Desventajas de las técnicas para solucionar la exclusión mutua.

  • Las soluciones por software suelen tener un alto coste y el riesgo de errores lógicos en el programa es también alto.
  • Las soluciones por hardware suponen el uso de instrucciones especiales de la máquina; estos métodos reducen la sobrecarga, pero son aún ineficientes porque emplean espera activa.
  • Las características dentro del sistema operativo contienen dos técnicas:
  • Semáforos
  • Paso de mensajes

11 of 27

DETECCION DE UN BLOQUEOS

  • Si un sistema no emplea un algoritmo de prevención o de evitación del bloqueo, entonces puede ocurrir una situación de bloqueo. Por ello, estos sistemas deben proveer:

– un algoritmo que examine el estado del sistema para determinar si ha ocurrido un bloqueo.

– un algoritmo para recuperarse del bloqueo

• Los esquemas de detección y recuperación tienen un alto overhead.

12 of 27

RECUPERACION DE BLOQUEOS

  • Cuando un algoritmo de detección determina que existe un bloqueo, el paso siguiente puede ser:

– informar al operador del bloqueo para que lo trate manualmente

– dejar que el sistema se recupere del bloqueo automáticamente

• Hay dos opciones para romper un bloqueo:

– abortar uno o más procesos para romper la espera circular

– apropiar algunos recursos de uno o más procesos bloqueados

13 of 27

se refiere a los distintos métodos y operaciones que se encargan de obtener la máxima utilidad de la memoria, organizando los procesos y programas que se ejecutan de manera tal que se aproveche de la mejor manera posible el espacio disponible.

14 of 27

TECNICAS

  • Las técnicas que existen para la carga de programas en la memoria son: partición fija, que es la división de la memoria libre en varias partes (de igual o distinto tamaño).

15 of 27

Administración de Memoria

  • Es la reubicación, que consiste en trasladar procesos activos dentro y fuera e la memoria principal para maximizar la utilización del procesador; la protección, mecanismos que protegen los procesos que se ejecutan de interferencias de otros procesos; uso compartido de códigos y datos, con lo que el mecanismo de protección permite que ciertos procesos de un mismo programa que comparten una tarea tengan memoria en común.

16 of 27

Particiones Dinámicas

  • Particiones dinámicas, son las particiones de la memoria en tamaños que pueden ser variables, según la cantidad de memoria que necesita cada proceso.
  • En esta las particiones se crean dinámicamente, de forma que cada proceso se carga en una partición de exactamente el mismo tamaño que el proceso.

17 of 27

Memoria Virtual

  • La memoria virtual es una técnica para que consiste en proporcionar la simulación  de  un  espacio de  memoria mucho mayor que la memoria física de una máquina. Esta "ilusión" permite que los programas se hagan sin tener en cuenta el tamaño exacto de la memoria física.
  • La ilusión de la memoria virtual está soportada por el mecanismo de traducción de memoria, junto con una gran cantidad de  almacenamiento  rápido  en  disco  duro. 

18 of 27

Memoria Virtual

  • La memoria virtual es una técnica para proporcionar la simulación  de  un  espacio de  memoria mucho mayor que la memoria física de una máquina. Esta "ilusión" permite que los programas se hagan sin tener en cuenta el tamaño exacto de la memoria física.

19 of 27

ventajas de utilizar memoria virtual

Es que Permite un alto grado de multiprogramación muy efectiva, un gran espacio virtual para el proceso y releva al usuario de las rígidas e innecesarias restricciones de la memoria principal.

20 of 27

Implicaciones de la memoria virtual

 La segmentación permite al programador contemplar  la memoria como si constara de varios espacios de direcciones o segmentos.

21 of 27

PAGINACION Y SEGMENTACION COMBINADAS

  • Tanto la paginación como la segmentación tienen sus ventajas. La paginación elimina la fragmentación externa y de este modo, aprovecha la memoria principal de forma eficiente.

22 of 27

  • En la paginación simple, la memoria principal se encuentra particionada en trozos iguales de tamaño fijo y del mismo tamaño que los de memoria. En tal caso, los trozos del proceso, conocidos como páginas, pueden asignarse a trozos libres de memoria, conocidos como marcos de páginas.
  • En la segmentación simple el programa y sus datos asociados se dividen en un conjunto de segmentos. Además no es necesario que todos los segmentos de todos los programas tengan la misma longitud, aunque existe una longitud máxima de segmento.

23 of 27

Diferencias entre paginación y segmentación

En la paginación

La memoria se divide en bloques de igual longitud denominados páginas. Además la dirección virtual se compone de dos partes: una página y un desplazamiento.

En la segmentación

En esta la memoria se divide en bloques de longitud variable llamados segmentos. También la dirección virtual se compone de dos partes: 1 segmento y 1 desplazamiento.

24 of 27

PROTECCION Y COMPARTIMIENTO

  • Un proceso de usuario sólo puede acceder memoria localizada en su espacio de direccionamiento virtual y un espacio de memoria compartido para sus procesos-hijo.
  •     Habilidad de separar completamente las tareas, al poder dar a cada tarea un espacio de direcciones virtuales diferentes.

25 of 27

Diferencia entre fragmentación interna y externa

  • Bien la fragmentación interna es el fenómeno en el que se malgasta el espacio interno de una partición cuando el bloque de datos cargado sea más pequeño que dicha partición.
  • En la fragmentación externa se refiere al hecho de que la memoria externa se fragmenta cada vez más hasta que llega un momento en el que su rendimiento decae.

26 of 27

Ventaja de utilizar segmentación simple en lugar de paginación simple

  • Es que la segmentación simple no tiene fragmentación interna.

27 of 27

  • Fuentes de Información:
  • INTERNET
  • Pueden ir visitar http://wilfridodepaula.blogspot.com

Pues allí hay videos importantes que pueden serviles de mas ayuda.