Planificación de Procesos
UTN - Sistemas Operativos
CONCEPTOS Y CLASIFICACIÓN
El planificador (o scheduler) tiene como objetivo asignar procesos para ser ejecutados en la CPU (administrando diferentes colas: READY - BLOCKED) de forma que cumplan los objetivos del sistema.
Tiempo de respuesta
Eficiencia CPU
Throughput
Según que tan frecuente debe tomar decisiones, podemos diferenciar 3 tipos de planificadores:
Largo plazo
Mediano plazo
Corto plazo
Extra Largo plazo
UTN - Sistemas Operativos
PLANIFICADOR LARGO PLAZO
Proceso finaliza -> disminuye grado multiprogramación
Monitoreo uso CPU -> cierto tiempo CPU IDLE
Job alta prioridad
Según prioridad Job
Buena mezcla de procesos
Optimizar performance
CPU BOUND
IO BOUND
UTN - Sistemas Operativos
PLANIFICADOR LARGO PLAZO
Alto grado de multiprogramación
Baje grado de multiprogramación
Brindar un servicio satisfactorio a los procesos LISTOS
UTN - Sistemas Operativos
PLANIFICADOR MEDIANO PLAZO
P1
P2
P1
Swap OUT
P2
Swap IN
RAM
SWAP
UTN - Sistemas Operativos
PLANIFICADOR MEDIANO PLAZO
Ejemplos:
Muchos procesos IO BOUND
Todos bloqueados -> CPU IDLE
Suspender procesos + cargar procesos CPU BOUND desde swap
Muchos procesos CPU BOUND
Mal uso dispositivos
Suspender procesos + cargar procesos IO BOUND desde swap
Proceso mayor prioridad + sin RAM
Suspender un proceso y cargar al de > prioridad
Proceso suspendido se está por desbloquear + RAM libre
Cargar proceso en RAM para acelerar su vuelta en ejecución
UTN - Sistemas Operativos
PLANIFICADOR CORTO PLAZO
UTN - Sistemas Operativos
PLANIFICADORES Y DIAGRAMA DE ESTADOS
Nuevo
Listo
En ejecución
En espera
Finalizado
Suspendido en espera
Suspendido listo
PLANIFICADOR MEDIANO PLAZO
PLANIFICADOR CORTO PLAZO
PLANIFICADOR LARGO PLAZO
PLANIFICADOR CORTO PLAZO
CRITERIOS
Orientados al usuario
Orientados al sistema
Tiempo de respuesta
Utilización CPU
Throughput
Predictibilidad
Tiempo de espera
Tiempo de ejecución
Cumplimiento de deadlines
Justicia
Utilización de recursos
Respetar prioridades
UTN - Sistemas Operativos
TIPO DE PLANIFICADOR (CORTO PLAZO)
Eventos a tener en cuenta
Siempre a tener en cuenta:
Pueden ser considerados
Dependiendo de qué eventos tenga en cuenta un algoritmo de planificación de corto plazo se clasificará en :
CPU LIBERADA
Puede convenir elegir otro proceso
UTN - Sistemas Operativos
TIPO DE PLANIFICADOR (CORTO PLAZO)
Los planificadores que sólo tienen en cuenta los eventos que son obligatorios (los que liberan a la CPU) son llamados Sin desalojo / No apropiativos / Non preemptive / Cooperativos ya que esperan a que el proceso le devuelva el control al SO para elegir otro proceso a ejecutar.
Los planificadores que además de considerar los eventos obligatorios consideran al menos UNO del resto de los eventos son llamados Con desalojo / Apropiativo / Preemptive ya que pueden interrumpir la ejecución de un proceso (desalojarlo de CPU -> vuelta a READY) para ejecutar otro más prioritario
UTN - Sistemas Operativos
Preguntas??
UTN - Sistemas Operativos