Documentos de Académico
Documentos de Profesional
Documentos de Cultura
Paralelismo independiente
Aplicacin o trabajo separado. No existe sincronizacin. Hay ms de un procesador disponible:
El tiempo medio de respuesta a los usuarios ser menor.
Planificacin
Asignacin de procesos a los procesadores. Uso de multiprogramacin en procesadores individuales. Expedicin real de los procesos.
Arquitectura maestro/esclavo:
Las funciones clave del ncleo siempre ejecutan en un determinado procesador. El maestro es el responsable de la planificacin. El esclavo enva una solicitud del servicio al maestro. Desventajas:
Un fallo en el maestro hace caer todo el sistema. El maestro puede llegar a ser un cuello de botella del rendimiento.
Hilos
La ejecucin se separa del resto de la definicin de un proceso. Una aplicacin puede implementarse como un conjunto de hilos que cooperan y ejecutan concurrentemente en el mismo espacio de direcciones. Los hilos que se ejecutan simultneamente en distintos procesadores posibilitan un aumento drstico del rendimiento.
Planificacin dinmica:
El nmero de hilos en un programa se puede cambiar en el curso de la ejecucin.
Reparto de carga
La carga se distribuye uniformemente entre los procesadores. No es necesario un planificador centralizado. Uso de colas globales.
Si todos los hilos estn en la cola global, todos los hilos de un programa no conseguirn acceder a los procesadores al mismo tiempo.
desocupado desocupado
Figura 10.2. Ejemplo de planificacin por grupos con uno y cuatro hilos [FEIT90a].
Planificacin dinmica
La aplicacin permite cambiar dinmicamente el nmero de hilos de un proceso. El sistema operativo ajusta la carga para mejorar la utilizacin:
Asigna los procesadores desocupados. Las nuevas llegadas pueden ser asignadas a un procesador quitndoselo a algn proceso que tenga ms de un procesador asignado. La peticin queda pendiente hasta que un procesador est disponible. Se asignar un procesador a las nuevas llegadas antes de que se den las aplicaciones que se estn ejecutando.
Proceso n
Proceso actual
Tiempo de planificacin
Proceso actual
Dos tareas
Tabla 10.2. Perfil de ejecucin de dos tareas peridicas.
Proceso Instante de llegada
Tiempo de ejecucin
Plazo final
Plazo de B1 Plazo de A5
A2
B1 A3 (No cumplido)
A1 (No cumplido)
A4 (No cumplido)
Figura 10.5. Planificacin de tareas peridicas de tiempo real con plazos de terminacin.
Instantes de llegada Requisitos Plazos de inicio Instantes de llegada Plazo ms cercano Servicio Plazo de inicio Instantes de llegada Plazo ms cercano con tiempos libres no forzosos Servicio Plazo de inicio Instantes de llegada Primero en llegar/primero en servirse (FCFS) Servicio Plazo de inicio (no cumplido)
(no cumplido)
(no cumplido)
Figura 10.6. Planificacin de tareas aperidicas de tiempo real con plazos de inicio.
Ciclo 2 libre
Procesamiento
Prioridad
Planificacin en LINUX
Clases de planificacin:
SCHED_FIFO: Hilos de tiempo real con planificacin FIFO. SCHED_RR: Hilos de tiempo real con planificacin por turno rotatorio. SCHED_OTHER: Hilos que no son de tiempo real y otros.
Mayor (31)
Menor (0)
mayor
por encima de lo normal por encima de lo normal
prioridad base
normal
por debajo de lo normal por debajo de lo normal menor menor
Prioridad de procesos