Generalmente se utilizan las siguientes hipótesis:
Todas las máquinas son idénticas (o al menos compatibles en el código); difieren 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.
Los algoritmos de asignación intentan optimizar algo:
Uso de las cpu:
Maximizar el número de ciclos de cpu que se ejecutan para trabajos de los usuarios.
Minimizar el tiempo de inactividad de las cpu.
Tiempo promedio de respuesta:
Minimizar no los tiempos individuales de respuesta sino los tiempos promedio de respuesta.
Tasa de respuesta:
Minimizar la tasa de respuesta, que es el tiempo necesario para ejecutar un proceso en cierta máquina dividido por el tiempo que tardaría en cierto procesador de referencia.