252M 6 SO
this site the web

unidad 2

2.11 PASO DE MNSJS S.O

—El paso de mensajes es una técnica empleada en programación concurrente para aportar sincronización entre procesos y permitir la exclusión mutua
—Su principal característica es que no precisa de memoria compartida, por lo que es muy importante en la programación para sistemas distribuidos.
—Los elementos principales que intervienen en el paso de mensajes son el proceso que envía, el que recibe y el mensaje.

•Automatizar Operaciones
• Minimo Espacio
• Reducccion de Errores
• Trabajan sin descanso
•Atienden mayor numero de Operaciones

2.12 CONCURRENCIA E INTERBLOQUEO


—Los procesos no son ejecutados constantemente desde que se inician hasta que son finalizados.
—Un proceso puede estar identificado con tres estados diferentes: leyendo (ready), ejecutando (running) o bloqueado (blocked). En el estado de lectura, un proceso está parado, concediendo que otro proceso sea ejecutado; en el estado de ejecución, un proceso está utilizando algún recurso; y en el estado de bloqueo, el proceso está parado y no se ejecutará mientras algo lo restaure.
—Una condición común no deseable es descripta como deadlock.
2.13 PRINCIPIOS DE INTERBLOQUEO

Los interbloqueos se relacionan con los recursos no apropiables. Lo usual es que los bloqueos asociados a recursos apropiables se pueden resolver, mediante la reasignación de recursos de un proceso a otro.
La secuencia de eventos necesaria para utilizar un recurso es:

• Solicitar el recurso
• Utilizar el recurso
Liberar el recurso

CONDICIONES PARA PRODUCIR INTERBLOQUEO
En la política del sistema operativo, deben darse tres condiciones para que pueda producirse un interbloqueo:
1.Condición de exclusión mutua: Cada recurso esta asignado a un único proceso o esta disponible.
2.Condición de posesión y espera: Los procesos que tienen, en un momento dado, recursos asignados con anterioridad, pueden solicitar nuevos recursos.
3.Condición de no apropiación: Los recursos otorgados con anterioridad no pueden ser forzados a dejar un proceso. El proceso que los posee debe liberarlos en forma explicita.

2.14 ACCIONES A REALIZAR EN INTERBLOQUEO

PREVENCIÓN DEL INTERBLOQUEO.


La estrategia básica de la prevención del interbloqueo consiste, en diseñar su sistema de manera que esté excluida, la posibilidad de interbloqueo.

Los métodos para prevenir el interbloqueo son de dos tipos:

—Los métodos indirectos que consisten en impedir la aparición de alguna de las tres condiciones necesarias para que se de el interbloqueo.

—Los métodos directos que consisten en evitar la aparición del circulo vicioso de espera.

üExclusión mutua
üRetención y espera
üNo apropiación
üCirculo vicioso de espera

PREDICCIÓN DEL INTERBLOQUEO


Una forma de resolver el problema del interbloqueo, que se diferencia sutilmente de la prevención, es la predicción del interbloqueo.
Con predicción del interbloqueo, se decide dinámicamente si la petición actual de asignación de un recurso podría, de concederse, llevar potencialmente a un interbloqueo. La predicción del interbloqueo necesita, por lo tanto, conocer las peticiones futuras de recursos.
Enfoques para la predicción del interbloqueo:

üNo iniciar un proceso si sus demandas pueden llevar a interbloqueo.
üNo conceder una solicitud de incrementar los recursos de un proceso si esta asignación puede llevar a interbloqueo.

DETECCIÓN DEL INTERBLOQUEO


Las estrategias de prevención de interbloqueo son muy conservadoras; resuelven el problema limitando el acceso a recursos e imponiendo restricciones sobre los procesos.
Recuperación de Interbloqueo
Cuando se ha detectado que existe un interbloqueo, podemos actuar de varias formas. Una posibilidad es informar al operador que ha ocurrido un interbloqueo y dejar que el operador se ocupe de él manualmente. La otra posibilidad es dejar que el sistema se recupere automáticamente del interbloqueo.

Recuperación Manual
Está forma de recuperación consiste en avisarle al administrador o al operador del sistema que se ha presentado un interbloqueo, y será el administrador el que solucione dicho problema.
Abortar los Procesos
Para eliminar interbloqueos abortando un proceso, tenemos dos métodos;

üAbortar todos los procesos interbloqueados. Este método romperá definitivamente el ciclo de interbloqueo pero con un costo muy elevado, ya que estos procesos efectuaron cálculos durante mucho tiempo y habrá que descartar los resultados de estos cálculos parciales, para quizá tener que volver a calcularlos más tarde.
üAbortar un proceso en cada ocasión hasta eliminar el ciclo de interbloqueo. El orden en que se seleccionan los procesos para abortarlos debe basarse en algún criterio de costo mínimo. Después de cada aborto, debe solicitarse de nuevo el algoritmo de detección, para ver si todavía existe el interbloqueo. Este método cae enmucho tiempo de procesamiento adicional.

0 comentarios:

Publicar un comentario

 

W3C Validations

Cum sociis natoque penatibus et magnis dis parturient montes, nascetur ridiculus mus. Morbi dapibus dolor sit amet metus suscipit iaculis. Quisque at nulla eu elit adipiscing tempor.

Usage Policies