bloqueo mutuo
TRANSCRIPT
¿Por qué se “traban” las computadoras cuando las usamos?
Considerando mi experiencia puedo decir que las computadoras llegan a trabarse cuando:
Existe software ejecutando y consumiendo recursos.
El calor excesivo donde se encuentra ubicado el equipo, las mejores pruebas de desempeño
del equipo se validan cuando la temperatura ambiente es en promedio entre los 17 y 22
grados centígrados.
Condiciones de limpieza en el equipo pueden también generar situaciones de incremento de
temperatura.
Cuando la cantidad de Memoria RAM es limitada y el equipo tiene que hacer uso de
memoria virtual para trabajar.
Las principales causas del bloqueo.
En sistema operativo es el bloqueo permanente de un conjunto de procesos o hilos de ejecución en
un sistema concurrente (es una característica de los sistemas operativos de hoy en día que permite
que varios procesos sean ejecutados al mismo tiempo compartiendo uno o más procesadores) que
compiten por recursos del sistema o se comunican entre ellos. El bloqueo permanente surge de
necesidades que no pueden ser satisfechas por parte de dos o más procesos.
Ejemplos de bloqueo.
Durante la sesión del usuario con el sistema operativo pueden presentarse dos estados en diversas
situaciones:
Estado seguro: Si el sistema puede asignar recursos a cada proceso (hasta el máximo), siguiendo
algún orden y así evitar el inter bloqueo.
Estado inseguro: El sistema no puede impedir que los procesos soliciten recursos de tal manera
que ocurra el bloqueo mutuo.
¿Cuáles de ellos están bloqueados o han sido bloqueados momentáneamente por el sistema?
1.- Cuando desde Word se está imprimiendo en la única impresora del sistema y desde Acrobat
Reader intentamos imprimir.
2.- Cuando estamos grabando un dvd en la unidad de Dvd- Writer y reproducimos un video desde un
reproductor de dvd externo.
3.- Cuando el antivirus analiza el disco duro e insertamos un medio extraíble, tratando de revisar el
dispositivo en busca de algún código malicioso.
En estas peticiones al sistema operativo el conjunto de peticiones bloquean momentáneamente los
servicios que se solicitan, sin embargo puede ocasionar que el sistema por falta de recursos entre en
lo que llamamos deadlock (bloqueo mutuo), ocasionando que el equipo se trabe y no resuelva para
ninguno de los procesos.
La falta de sincronización entre las peticiones de los procesos puede dar lugar a condiciones de
bloqueo, condiciones que pueden presentarse por la interacción del usuario por los sistemas
operativos interactivos, ya que permite el uso de aplicaciones de forma simultánea, mejorando la
experiencia para el usuario.
Dos procesos compitiendo por los recursos que necesitan para funcionar y que solo pueden ser
utilizados por un proceso a la vez, y se genera el bloqueo cuando los dos procesos están esperando
a que el otro libere un proceso para ocuparlo.
Porque suceden los bloqueos
Se desconoce cierta información sobre los procesos antes de la asignación de recursos.
El sistema operativo debe saber por adelantado y en cualquier momento el número y tipo de
todos los recursos en existencia, disponibles y requeridos.
Los procesos no liberan todos sus recursos antes de pedir todos los recursos que necesitan.
Un proceso debe poder tener un recurso por cierto tiempo o el bloqueo se presenta.
Cuando el usuario está haciendo peticiones al sistema o ejecutando programas de los que
requiere que la computadora tenga los recursos que mínimos y porque tiene muy pocos
recursos, ya que también puede tornarse lenta por la escritura al disco duro por utilizar
memoria virtual.
Conclusiones.
Los bloqueos mutuos pueden prevenirse asegurando que no suceda alguna de las condiciones
necesarias siguientes:
Eliminando la exclusión mutua: ningún proceso puede tener acceso exclusivo a un recurso.
La condición de posesión y espera puede ser eliminada haciendo que los procesos pidan
todos los recursos que van a necesitar antes de empezar.
La condición de no expropiación puede ser también imposible de eliminar dado que un
proceso debe poder tener un recurso por un cierto tiempo o el procesamiento puede quedar
inconsistente.
La condición de espera circular es la más fácil de atacar. Se le permite a un proceso poseer
sólo un recurso en un determinado momento.
Referencia de consulta.
SO bloqueos consultados en http://exa.unne.edu.ar/depar/areas/informatica/SistemasOperativos/
SO6.htm el 18 de mayo del 2013.
Gestión del procesador consultado en
http://fundamentossistemasoperativos.blogspot.mx/2010/10/definicion-de-bloqueo-mutuo.html
el 20 de mayo del 2013.
Bloqueo mutuo consultado en el Moodle de la UDGVirtual. El 16 de mayo del 2013.
Saludos.