Cuando más de un proceso es ejecutable, el Sistema
Operativo debe decidir cual de ellos debe ejecutarse en primer término. Esa
parte del sistema operativo que debe de llevar a cabo esa decisión se llama
planificador y el algoritmo que utiliza se llama algoritmo de planificación.
El planificador intenta conseguir con su administración de procesos lo
siguiente:
Equidad: Garantizar que cada proceso obtenga su proporción justa de la CPU. Es
decir, que ningún proceso llegue a apoderarse por completo de la CPU.
Eficiencia: Mantener ocupada la CPU al 100 %, esto con el fin de evitar los
tiempos ociosos que pueda tener el CPU.
Rendimiento: Maximizar el número de tareas procesadas por hora, es decir, que
el CPU pueda atender todos y cada una de las peticiones que le fueron hechas.
Para garantizar que ningún proceso se ejecute un tiempo excesivo, casi todas
las computadoras tienen un cronómetro electrónico o un reloj incluido, que
provoca una interrupción en forma periódica. En cada interrupción del reloj, el
sistema operativo logra ejecutarse y decidir si el proceso que se ejecuta en
ese momento tiene permiso de continuar o si tiene el tiempo suficiente en la
CPU por el momento, para después suspenderlo para que otro proceso utilice la
CPU. (Stephen Degler (2003). Administración de sistemas Linux.).
FIFO
Mecanismo de scheduling en el cual los procesos se ordenan en una fila, en
la cual se ejecutan cada uno de los procesos hasta su finalizacion
secuencialmente. Es tremendamente ineficiente.
Cuando se tiene que elegir a qué proceso asignar la CPU se escoge al que
llevara más tiempo listo. El proceso se mantiene en la CPU hasta que se bloquea
voluntariamente.
Para implementar el algoritmo sólo se necesita mantener una cola con los
procesos listos ordenada por tiempo de llegada. Cuando un proceso pasa de
bloqueado a listo se sitúa el último de la cola.
FIFO
Es el acrónimo inglés de First In, First Out (primero en entrar, primero
en salir). Un sinónimo de FIFO es FCFS, acrónimo inglés de First Come First
Served ( primero en llegar, primero en ser servido). Es un método utilizado en
estructuras de datos, contabilidad de costes y teoría de colas.
Guarda analogía con las personas que esperan en una cola y van siendo atendidas
en el orden en que llegaron, es decir, que la primera persona que entra es la
primera persona que sale.
SJF
El trabajo más corto primero: Llamado también SJF (Shortest Job First). Este
algoritmo de planificación reduce la preferencia en favor de los procesos más
largos dando más importancia a los procesos cortos, como se muestra en la
figura.Esta política funciona otorgándole el procesador al proceso más corto.
En general, esta política mejora el funcionamiento del sistema en términos del
tiempo de respuesta, pero gran cambia demasiado cuando se trata de procesos
largos.Las características de este algoritmo son las siguientes:El tiempo de
espera aumenta de acuerdo con el tamaño de los procesos, pero el tiempo
promedio de espera con respecto a otros algoritmos es óptimo.Es poco
predecible.No es justo con los procesos largos.Tiene buen tiempo de
servicio.Resulta difícil de llevarse a la práctica por los datos que necesita
para realizarse la planificación.Su característica principal es que cuando se
activa el planificador, éste elige el proceso de menor duración. Es decir,
introduce una noción de prioridad entre procesos.La ventaja que presenta este
algoritmo sobre el algoritmo FIFO es que minimiza el tiempo de finalización
promedio.
RRRound robin: Uno de los más antiguos, sencillo, justo y de uso más
amplio es el round robin. Cada proceso tiene asignado un intervalo de tiempo de
ejecución, llamado su quantum. Si el proceso en ejecución al final de su
quantum, otro proceso se apropia de la CPU. Si el proceso esta bloqueado o a
terminado antes de consumir su quantum, se altera el uso de la CPU. El Roun
Robin es muy fácil de implantar. Todo lo que necesita el planificador es
mantener una lista de procesos ejecutables. Cuando el quantum de un proceso se
consume, se le coloca al final de la lista.
- Planificación Round Robin.
(a) La lista de procesos ejecutables.(b) La lista de procesos ejecutables
después de agotarse el quantum B.
El único aspecto interesante del round robin es la longitud del quantum. La
alternancia entre un proceso y otro necesita cierta cantidad de tiempo para
administración.
No hay comentarios:
Publicar un comentario