Son necesarios algoritmos para decidir cuál proceso hay que
ejecutar y en qué máquina. Para el modelo de estaciones de trabajo:
·
Decidir
cuándo ejecutar el proceso de manera local y cuándo es necesario buscar
estaciones inactivas o no locales que tienen una conexión a la misma red pero
fuera de ella.
Para el modelo de la pila de procesadores:
·
Decidir
dónde ejecutar cada nuevo proceso respecto de la misma máquina que es la tabla
(lista) de los procesos que se crean dentro de la maquina.
MODELOS Y ALGORITMOS CON SUS ASPECTOS DE DISEÑO E
IMPLANTACIÓN
Los principales aspectos del Diseño de Algoritmos de
Asignación de Procesadores son los
siguientes:
·
Algoritmos deterministas vs. Heurísticos.
·
Algoritmos centralizados vs. Distribuidos.
·
Algoritmos óptimos vs. Subóptimos.
·
Algoritmos locales vs. Globales.
Algoritmos iniciados por el emisor vs. Iniciados por el
receptor.
Los algoritmos deterministas son adecuados cuando se sabe
anticipadamente todo acerca del comportamiento de los procesos, pero esto generalmente
no se da, aunque puede haber en ciertos casos aproximaciones estadísticas. Los
algoritmos heurísticos son adecuados cuando la carga es impredecible.
Los diseños centralizados permiten reunir toda la
información en un lugar y tomar una mejor decisión; la desventaja es que la
máquina central se puede sobrecargar y se pierde robustez ante su posible
falla.
‘’‘Aspectos de la
Implantación de Algoritmos de Asignación de Procesadores’‘’
Casi todos los algoritmos suponen que las máquinas conocen
su propia carga y que pueden informar su estado: La medición de la carga no es
tan sencilla.
Un método consiste en contar el número de procesos (hay que
considerar los procesos latentes no activos). Otro método consiste en contar
solo los procesos en ejecución o listos.
También se puede medir la fracción de tiempo que la CPU está
ocupada.
Las máquinas ejecutan sus algoritmos en forma asíncrona por
lo que el sistema nunca se equilibra.
La mayoría de los algoritmos que intercambian información
Modelos de Asignación:
Generalmente se utilizan las siguientes hipótesis:
·
Todas las máquinas son idénticas (o al menos
compatibles en el código); difieren a lo sumo en la velocidad.
·
Cada procesador se puede comunicar con los
demás.
·
Las estrategias de asignación de procesadores se
dividen en:
No migratorias:
Una vez colocado
un proceso en una máquina permanece ahí hasta que termina.
Migratorias:
Un proceso se
puede trasladar aunque haya iniciado su ejecución.
Permiten un mejor
balance de la carga pero son más complejas.
Hijos de la chingada
ResponderEliminar