Interbloqueo y Migración de Procesos en Sistemas de Comunicación
Enviado por Programa Chuletas y clasificado en Informática y Telecomunicaciones
Escrito el en español con un tamaño de 3,32 KB
8) Espera mutua: se produce interbloqueo en la comunicación de mensajes cuando cada uno de los procesos de un grupo de procesos está esperando un mensaje de otro miembro del grupo y no hay mensajes en camino. En un interbloqueo en un conjunto S de procesos puede definirse como sigue:
- Todos los procesos de S están detenidos en espera de mensajes.
- S contiene al conjunto de dependencia de todos los procesos de S.
- Ningún mensaje está de camino entre los miembros de S.
Cualquier proceso de S está interbloqueado porque no puede recibir nunca un mensaje que lo libere.
9) Movimiento del bloque de control del proceso: es sencillo. Desde el punto de vista del rendimiento, la dificultad radica en el espacio de direcciones del proceso y en los archivos abiertos que tenga asignados. Considérese primero el espacio de direcciones y supóngase que se está utilizando un esquema de memoria virtual (segmentación o paginación). Pueden surgir dos estrategias:
- Transferir todo el espacio de direcciones en el momento de la migración. Este es el método más elegante. No hace falta dejar rastro del proceso en el sistema anterior. Sin embargo, si el espacio de direcciones es muy grande y si es probable que el proceso no necesite la mayor parte, este procedimiento puede ser costoso sin necesidad.
- Transferir solo aquella parte del espacio de direcciones que reside en memoria principal. Cualquier bloque adicional del espacio de direcciones virtuales será transferido solo bajo demanda. Esto minimiza la cantidad de datos que se transfieren. Sin embargo, se necesita que la máquina de origen siga involucrada en la vida del proceso, manteniendo entradas en la tabla de páginas y segmentos.
10) Emigración de procesos: cuando un proceso emigra, hace falta destruirlo en el sistema de origen y crearlo en el sistema de destino. Esto es un movimiento de procesos y no una duplicación. Por tanto, debe moverse la imagen del proceso que consta de, por lo menos, el bloque de control de proceso. Además, debe actualizarse cualquier enlace entre este y otros procesos, como los de paso de mensaje y señales.
Desalojo: el proceso de negociación permite que un sistema de destino rechace la inmigración de un proceso. Además, puede ser útil hacer que un sistema desaloje un proceso que ha emigrado hacia él. Por ejemplo, si un puesto de trabajo se activa, puede hacer falta desalojar los procesos inmigrados para ofrecer un tiempo de respuesta apropiado.
11) Algoritmos para sistemas con requerimientos conocidos: una clase de algoritmos analizada con amplitud es para los sistemas que constan de procesos con requerimientos conocidos de CPU y memoria, además de una matriz conocida con el tráfico promedio entre cada pareja de procesos. El sistema se puede representar como gráfica con pesos, donde cada nodo es un proceso y cada arco representa el flujo de mensajes entre dos procesos. Desde el punto de vista matemático, el problema se reduce entonces a encontrar una forma de partir (es decir, cortar) la gráfica en dos subgráficas ajenas, sujetas a ciertas restricciones. Por ejemplo, el total de requerimientos de CPU y memoria deberá estar por debajo de ciertos límites para cada subgráfica.