You are on page 1of 6

UNIDAD II GESTIN DE LOS PROCESOS DISTRIBUIDOS

2.1 MIGRACIN DE LOS PROCESOS


La migracin de procesos consistente en transferir un proceso entre dos
mquinas, es decir,
el proceso se ejecuta sobre la maquina destino,
destruyendo el mismo en el origen y crendolo en el destino mismo.
La razn para mover el proceso de una maquina a otra es la
performance, y cuando decimos performance, nos referimos a performance a
nivel sistema, donde mudamos procesos de mquinas saturadas a maquinas
en menos carga. El criterio por lo general elegido para medir lo que llamamos
performance, es el uso de la CPU.
Otra de las razones para la migracin de procesos, puede ser el mover
un proceso a otro nodo para ahorrarse la comunicacin entre ambas. Por
ejemplo, un proceso de una PC que consulta mucho una BD que se encuentra
en otro nodo del sistema distribuido conviene migrarlo para no tener que
comunicar los resultados.
Las posibilidades que ofrece la migracin de procesos incluyen:
distribucin dinmica de carga, tolerancia a fallas, mejor administracin del
sistema y localidad de acceso a los datos.
MOTIVACIN
La migracin de procesos es deseable en los sistemas distribuidos por una
serie de razones:

COMPARTIMIENTO DE CARGA: trasladando los procesos desde sistemas


muy sobrecargado hacia otros menos cargados, la carga puede
equilibrase y as mejorar el rendimiento global.

RENDIMIENTO DE LAS COMUNICACIONES: los procesos que interactan


de forma intensiva pueden moverse a un mismo nodo para reducir el
coste de las comunicaciones durante su interaccin. Cuando un proceso
realiza un anlisis de datos sobre algn archivo o conjunto de archivos
mayores que el tamao del proceso, puede resultar ms ventajoso llevar
el proceso hasta los datos que a la inversa.

DISPONIBILIDAD: los procesos que duran mucho tiempo pueden


necesitar moverse para sobrevivir frente a los fallos de los que pueda
obtener previo aviso o en previsin de una cada planificada. Si el
sistema operativo proporciona un aviso, un proceso que desea continuar
puede migrar a otro sistema o bien asegurarse de que se reanudar ms
tarde en el sistema actual.

UTILIZACIN DE CAPACIDADES ESPECIALES: un proceso puede


trasladarse para sacar ventaja de algunas capacidades del hardware o
software disponibles en un nodo determinado.

MECANISMOS DE MIGRACIN DE PROCESOS


Debemos considerar una serie de cuestiones a la hora de disear un servicio
de migracin de procesos.
INICIO DE LA MIGRACIN: Depender del objetivo del servicio de migracin.

Si el objetivo es equilibrar la carga, algn mdulo supervisor de la carga


del sistema operativo ser el responsable de decidir cundo se realizar
la migracin y de indicar a un proceso que va a migrar. Para determinar
dnde va a migrarse, el mdulo tiene que estar en comunicacin con
mdulos similares de otros sistemas y as poder supervisar la
composicin de la carga de otros sistemas. La funcin de migracin
completa, como la existencia de varios sistemas, es transparente al
proceso.
Si el objetivo es llegar a unos recursos determinados, el proceso puede
emigrar por s mismo cuando surja la necesidad. En este caso, el
proceso debe ser consciente de la existencia de un sistema distribuido.

QUE MIGRA?
Cuando un proceso migra, es necesario destruirlo del sistema de origen y
crearlo en el sistema de destino. Esto es un movimiento de procesos y no una
duplicacin. Es responsabilidad del S.O. mover el bloque de control de proceso,
y actualizar cualquier enlace entre ste y otros procesos, como los de paso de
mensajes y seales.
La transferencia del proceso de una mquina a otra es invisible al proceso que
migra y a los que se comunican con l.
Esta figura ilustra dichas ideas. El proceso 3 migra fuera de la mquina S para
convertirse en el proceso 4 de la mquina D, manteniendo constante todos los
identificadores de enlace adquiridos por los procesos.

Estrategias de Migracin de Procesos:


TRANSFERENCIA (COMPLETA): Consiste en transferir todo el espacio de
direcciones en el momento de la migracin. Desventaja, si el espacio de
direcciones es muy grande y si es probable que el proceso no necesite la
mayor parte de l, ste procedimiento puede ser costoso sin necesidad.
COPIA ANTICIPADA: El proceso contina su ejecucin en el nodo de origen
mientras se copia el espacio de direcciones en el nodo de destino.
Desventaja: Las pginas modificadas en el origen durante la operacin de
copia anticipada deben copiarse de nuevo. Esta estrategia reduce el tiempo
que un proceso est congelado y no puede ejecutarse durante la migracin.
TRANSFERENCIA (MODIFICADO): es aquel tipo de migracin que transfiere
nicamente la porcin del espacio de direcciones que est en memoria y ha
sido modificado. Cualquier bloque adicional del espacio de direcciones virtuales
se trasferir slo bajo demanda, para minimizar la cantidad de datos que se
transfiere. Se necesita que la mquina de origen siga involucrada en la vida
del proceso manteniendo entradas en la tabla de pginas y necesita de soporte
para la paginacin remota. Esta es una migracin a medias que sirve para
aquellos procesos que son muy grandes como para transmitir su estado
completo. De todas maneras, sigue siendo un mtodo costoso.

COPIA POR REFERENCIA: Las pginas son desplazadas slo cuando se las
hace referencia. El coste inicial de la migracin de proceso es el ms bajo de
todos, oscilando desde varias decenas hasta varios cientos de microsegundo.
VOLCADO (FLUSING): Se eliminan las pginas del proceso de la memoria
principal del origen, volcando al disco las pginas modificadas. Luego se
accede a cada pgina segn se vayan necesitando desde el disco en vez de
hacerlo desde la memoria del nodo de origen.
Si el proceso no utiliza la mayora de su espacio de direcciones mientras
est en la mquina de destino, tiene ms sentido la segunda estrategia. Por
otra parte, si accede a una gran parte del espacio de direcciones mientras est
en la mquina de destino, puede ser menos eficaz la transferencia por partes
del espacio de direcciones que trasladar, todo el espacio de direcciones en el
momento de la migracin, usando una de las dos primeras estrategias.
MENSAJES Y SEALES
El destino de los mensajes y las seales pendientes, se puede tratar,
mediante un mecanismo de almacenamiento temporal, durante la migracin,
de los mensajes y seales pendientes para dirigirlos a su nuevo destino. Puede
hacer falta mantener una informacin de desvo en la instalacin inicial durante
algn tiempo, para asegurar que llegan todos los mensajes y las seales
pendientes.
La migracin es una actividad dinmica en la que intervienen una serie
de pasos para trasladar la imagen de un proceso. Cuando la migracin la inicia
otro proceso, en lugar de ser auto migracin un posible enfoque consiste en
copiar la imagen del proceso y todo su espacio de direcciones a un archivo,
destruir el proceso, copiar el archivo a la otra mquina mediante un servicio de
transferencia de archivo y volver a crear el proceso a partir del archivo de la
mquina de destino.

NEGOCIACIN DE LA MIGRACIN
Otro aspecto de la migracin de procesos est relacionado con la
decisin de emigrar. En algunos casos, la decisin la toma una nica entidad.
Algunos sistemas permiten que el destino designado participe en la
decisin para conservar el tiempo de respuesta a los usuarios.
La poltica de migracin (cuando emigra, qu proceso y a qu destino)
es responsabilidad del servicio iniciador (Starter), que es un proceso
responsable adems de la planificacin a largo plazo y de la asignacin de
memoria. El Iniciador puede coordinar las polticas de estos tres campos y
cada proceso iniciador puede controlar un grupo de mquinas y recibe del
ncleo de cada mquina unas estadsticas de carga elaboradas.

Los dos procesos iniciadores deben tomar en comn la decisin de migar. Para
ello existen varias etapas:

El iniciador que controla el sistema de origen(S) decide que un proceso


(B) debe migar a un sistema de destino determinado (D). Entonces
enva un mensaje al iniciador de (D) solicitando la transferencia.
Si el iniciador de D est preparado para recibir al proceso devuelve una
seal de recibo afirmativo.
El iniciador de s le comunica su decisin al ncleo de s a travs de la
llamada a un servicio (si el iniciador se est ejecutando en S) o
mediante un mensaje a la tarea del ncleo de la mquina S (si el
iniciador est ejecutando en otra mquina) que es un proceso que
convierte los mensajes procedentes de procesos remotos en llamadas a
servicios.
El ncleo S se ofrece entonces para enviar el proceso a D. En la oferta
se incluyen estadsticas sobre P, como pueden ser la edad y la carga de
procesador y de comunicaciones que conlleva.
Si D anda escaso de recursos, puede rechazar la oferta. En otro caso, el
ncleo de D propone la oferta a su iniciador. En la propuesta se incluye
la misma informacin recibida de S.
La decisin segn la poltica del iniciador se le comunica a D mediante
una llamada Inmigrar.
D reserva los recursos necesarios para evitar problemas de interbloqueo
y control de flujo y, posteriormente, enva a S una aprobacin.

Aparecen otros dos procesos, A y B, que tienen enlaces abiertos con P. La


mquina 1 donde reside S debe enviar mensajes de actualizacin de enlaces a
la mquinas 0 y 2 para preservar los enlaces de A y B en P. Los mensajes de
actualizacin de enlaces comunica la nueva direccin de cada enlace reservado
por P y los ncleos a los que llegan deben confirmarlos a efectos de
sincronizacin. Un mensaje enviado a P por cualquiera de sus enlaces ir
directamente a D. Estos mensajes pueden intercambiar de forma concurrente
con los pasos antes descritos. Tras el paso7 y despus de que se han
actualizado todos los enlaces, S agrupa el contexto de P en un solo mensaje y
lo enva a D.

You might also like