Diferencia entre bloqueo e inanición en el sistema operativo OS

Te explicamos la Diferencia entre bloqueo e inanición en el sistema operativo OS con ejemplos y definiciones. Conoce todos los datos para distinguirlos fácilmente.
diferencia

¿Cuál es la Diferencia entre bloqueo e inanición en el sistema operativo OS?

¿Qué es el bloqueo?
El bloqueo es una situación en la que un conjunto de hilos se bloquea porque cada proceso que tiene un recurso está intentando acceder a otro recurso que tiene otro proceso, impidiendo así una programación justa del sistema. Una situación de bloqueo se produce cuando se cumplen las cuatro condiciones siguientes: Exclusión mutua significa que solo un proceso puede acceder a un recurso a la vez: Sin condición de preferencia significa que un recurso solo puede ser liberado voluntariamente por el proceso que tiene el recurso: Mantener y esperar significa que un proceso que tiene recursos puede solicitar recursos adicionales en poder de otros procesos y: Espera circular significa que dos o más procesos están atrapados en una cadena circular a la espera de que cada proceso libere sus respectivos recursos.
 

¿Qué es el hambre?
La inanición es una condición que surge cuando un proceso entra en el período de espera indefinidamente ya que un proceso de baja prioridad nunca tiene la oportunidad de acceder al recurso debido a un flujo constante de procesos de alta prioridad que acceden al mismo recurso. Se trata de un problema de gestión de recursos porque a un proceso se le deniega el acceso al recurso que necesita, empujándolo así a un periodo de espera indefinido. Esto ocurre porque el recurso que necesita nunca se asigna al proceso, lo que provoca que el proceso se muera de hambre de recursos, de ahí su nombre. La mejor manera de evitar la inanición es utilizar la técnica de envejecimiento que aumenta gradualmente la prioridad de los procesos que están en el período de espera durante mucho tiempo con el fin de garantizar un sistema de programación justo.
 
Diferencia entre bloqueo e inanición en un sistema operativo
1.Definición de bloqueo e inanición
Tanto el bloqueo como la inanición son conceptos relacionados que impiden una programación justa del sistema en el que los procesos están bloqueados para acceder a los recursos. El punto muerto, como su nombre indica, se refiere a una situación en la que un conjunto de hilos o procesos están bloqueados porque cada proceso está esperando para adquirir un recurso que está en manos de otro proceso, lo que da lugar a una situación de punto muerto en la que los programas dejan de funcionar. La inanición, por otro lado, se desencadena por un punto muerto que hace que un proceso se bloquee porque a un proceso de baja prioridad se le niega el acceso a un recurso que está asignado a un proceso de alta prioridad.
2.Condición
Un bloqueo se refiere a una condición específica que ocurre cuando un hilo o un proceso entra en un periodo de espera porque el recurso del sistema que solicitó está siendo retenido por otro proceso, que a su vez está esperando a que otro proceso libere su recurso creando así un bloqueo. Esto se debe a una mala utilización de los recursos. La inanición es una condición de aplazamiento indefinido en la que a un proceso de baja prioridad se le niega el acceso a los recursos que necesita porque los recursos están siendo asignados a otro proceso de alta prioridad. Es un problema de gestión de recursos que obliga al sistema a asignar recursos solo a procesos de alta prioridad.
3.Caracterización del bloqueo y la inanición
El bloqueo es la última forma de inanición que se produce cuando se dan simultáneamente las cuatro condiciones siguientes: Exclusión mutua, no preferencia, espera y espera circular. Una situación de bloqueo solo se produce en sistemas en los que se cumplen las cuatro condiciones. La inanición se produce en función de diferentes condiciones, como cuando no hay recursos suficientes para todos y la prioridad de los procesos empieza a bajar o cuando los procesos empiezan a ceder recursos a otros procesos sin control. Si un proceso de baja prioridad solicita un recurso reservado para los procesos de mayor prioridad, el proceso se muere de hambre para siempre. La inanición también se produce cuando los recursos se asignan de forma arbitraria, lo que provoca que los procesos tengan que esperar durante más tiempo.
4.Prevención
La inanición puede evitarse utilizando un algoritmo de programación adecuado con cola de prioridad que, de hecho, también utilice la técnica de envejecimiento, una técnica de programación que añade el factor de envejecimiento a la prioridad de cada solicitud, lo que significa que aumenta el nivel de prioridad de los procesos de baja prioridad que llevan mucho tiempo esperando. Además, proporcionar más recursos a los programas debería evitar la congestión continua de los recursos. Para evitar que el sistema entre en un punto muerto, se debe denegar a los procesos el acceso a uno o más recursos mientras esperan simultáneamente por otros y solo se debe permitir que un proceso acceda a un recurso a la vez.
Bloqueo frente a inanición: Cuadro comparativo

 
Resumen de Punto muerto VS. Hambre
Tanto el bloqueo como la inanición son conceptos relacionados en sistemas operativos multiproceso o sistemas distribuidos que provocan que uno o varios hilos o procesos se queden atascados en espera de los recursos que necesitan. El punto muerto es una situación que se produce cuando uno o más procesos solicitan acceso al mismo recurso provocando la paralización del proceso, mientras que la inanición está provocada por el punto muerto que empuja al proceso a un estado de aplazamiento indefinido porque a los procesos se les deniega el acceso a un recurso que está en manos de un proceso de alta prioridad y tienen que esperar eternamente.

Deja un comentario