Planificación de CPU: FCFS, SJF, SRT, prioridades y Round Robin
Resumen
Este apunte explica cinco algoritmos de planificación de CPU: FCFS, SJF, SRT, planificación por prioridades y Round Robin. Para cada uno describe cómo elige el proceso que recibe la CPU, con sus ventajas e inconvenientes. También explica el papel del quantum en Round Robin. Un estudiante aprenderá a distinguir los algoritmos apropiativos de los no apropiativos.
Puntos clave
- FCFS atiende los procesos por orden de llegada a la cola y no es apropiativo: el proceso que entra en CPU se ejecuta hasta el final.
- SJF elige el proceso más corto y desempata con FCFS. Es óptimo para minimizar el tiempo de espera, pero hay que conocer la duración de cada uso de CPU.
- SRT es la versión apropiativa de SJF: si llega un proceso con menos tiempo restante, se le cede la CPU.
- En prioridades, a menor número, mayor prioridad. Puede ser con o sin expropiación, y los procesos de prioridad alta pueden bloquear a los de prioridad baja.
- Round Robin asigna a cada proceso un quantum (Q). Si Q es muy grande se comporta como FCFS, y si es muy pequeño hay demasiados cambios de proceso en CPU.
- Round Robin es sencillo de implementar y equitativo con todos los procesos.
Algoritmo FCFS (First-Come-First-Served)
Primero en llegar, primero en ser servido.
- Los procesos se despachan según su instante de llegada a la cola.
- Si el proceso entra en CPU, se ejecuta hasta el final: no apropiativo.
Ventajas:
- Fácil de implementar y de gestionar, no requiere excesivos recursos.
Inconvenientes:
- Puede ocasionar que procesos largos hagan esperar a procesos cortos y que procesos no importantes hagan esperar a procesos importantes.
- Posee altos tiempos de respuesta y no es válido en procesos interactivos.
Algoritmo SJF (Shortest-Job-First)
Primero los procesos más cortos.
- El proceso corto salta a la cabeza de la cola.
- Si dos procesos duran lo mismo, hay que desempatar usando FCFS.
- Si el proceso entra en CPU, se ejecuta hasta el final: no apropiativo.
Ventajas:
- Es óptimo en minimizar el tiempo de espera.
Inconvenientes:
- Averiguar la duración del uso de CPU de cada proceso.
- Materialmente es un algoritmo imposible de implementar.
Algoritmo SRT (Shortest-Remaining-Time)
Tiempo restante más corto.
- Es la versión apropiativa del algoritmo anterior (SJF).
- El planificador siempre elige el proceso que tiene el tiempo restante de procesamiento esperado más corto.
- Si durante la ejecución de un proceso llega otro al que le quede menos tiempo para acabar, se le cede la CPU.
- Si a dos procesos les resta el mismo tiempo, se desempata con FCFS.
Ventajas:
- Es óptimo en minimizar el tiempo de espera.
Inconvenientes:
- Averiguar la duración del siguiente uso de CPU de cada proceso.
- Imposible de implementar.
- Muchos cambios de contexto.
Planificación por Prioridades
- A cada proceso se le asigna una prioridad y el planificador asigna la CPU al proceso más prioritario.
- Puede ser con o sin expropiación.
- La prioridad es un número entero; a menor número, mayor prioridad.
Ventajas:
- Minimiza el tiempo de finalización promedio.
Inconvenientes:
- Los procesos de prioridad alta pueden bloquear los procesos de prioridad baja.
- Determinar la prioridad de los procesos.
Algoritmo Round Robin
- Asigna a cada proceso una porción de tiempo igual y de forma ordenada.
- Esa porción o cantidad fija de tiempo se llama Quantum (Q).
- Un quantum equivale a una o varias ráfagas.
- Si el proceso agota el quantum, se bloquea o termina antes, el siguiente proceso entra en CPU.
- Los procesos en espera de la CPU se comportan como FCFS.
Ventajas:
- Facilidad de manejo.
- Sencillez de implementación.
- Equitativo con todos los procesos.
Inconvenientes:
- La elección adecuada del quantum:
- Si Q es muy grande: los procesos terminan sus tiempos de CPU antes que el quantum, por lo que se comporta como FCFS.
- Si Q es muy pequeño: hay muchos cambios de procesos en CPU y baja el rendimiento.
Descargar
PDF Word HTMLPreguntas frecuentes
¿Qué es el quantum en Round Robin?
Es la porción de tiempo fija que recibe cada proceso. Si el proceso agota el quantum, se bloquea o termina antes, el siguiente proceso entra en CPU.
¿Qué diferencia hay entre SJF y SRT?
SJF no es apropiativo: el proceso que entra en CPU se ejecuta hasta el final. SRT es apropiativo: si llega un proceso al que le quede menos tiempo, se le cede la CPU.
¿Por qué FCFS no sirve para procesos interactivos?
Porque tiene altos tiempos de respuesta, y los procesos largos pueden hacer esperar a los cortos.
Ponte a prueba
Tarjetas de repaso
Pulsa una tarjeta para ver la respuesta.
Test
Preguntas generadas con IA a partir del documento: comprueba las respuestas con el texto.