FCFS (first come first server):
Es el algoritmo de planificacion mas sencillo. Esto es, el primer proceso en solicitar la CPU es el primero en recibir la asignacion de la misma. La implementacion del FSFC se realiza facilmente mediante una cola FIFO. Cuando un proceso entra en la cola de preparados o listos para la ejecucion, su PCB se enlaza al final de la cola.
· Ventajas: Las prestaciones del FCFS son con frecuencia bastantes pobres, produciendo el efecto convoy.
· Desventajas: El tiempo medio de espera suele ser elevado, bajo nivel de utilizacion de la CPU, pobre tiempo de respuesta en procesos cortos, tiende a favorecer a los procesos con carga de CPU y uso ineficiente de los dispositivos E/S.
Apropiativo y no apropiativo: Partiendo de un algoritmo no apropiativo conseguimos una gestion de los procesos apropiativa al emplear colas de prioridad. FCFS es una solucion para tratar de resolver el efecto convoy.
SJF (shortest job first):
Se basa en ejecutar primero los procesos de menor tamaño y, en caso de que halla dos iguales, se prioriza el que llego antes al sistema.
· Ventajas: El SJF no es implementable se puede estimar las duraciones de los procesos y la dificultad en el algoritmo SJF es conocer la longitud de la proxima rafaga de CPU de un proceso.
· Desventajas: Riesgo de inanicion de los procesos de larga duracion.
SRT (shortest remaining time first):
La evolucion logica sera convertir el algoritmo anterior en apropiativo. Las caracteristicas mas importantes de este algoritmo son:
- Es injusto, si una serie de procesos cortos quitan repetidamente el procesador a uno largo que, a la vez, lo esta usando y esta terminado.
- Logra un excelente tiempo medio de servicio.
- Resulta muy eficiente.
· Ventajas: Optimiza la media del tiempo de espera y rendimiento.
· Desventajas: El intervalo de la CPU es dificil de predecir y posiblidad de inanicion: los trabajps largos no se ejecutaran mientras esten los cortos en funcionamiento.
RR (round-robin):
Consiste en definir una unidad de tiempo llamado quantum, de forma que los procesos ya no pelean por los recursos sino que estos se asignan equitativamente a todos ellos por turnos. Se pueden dar dos casos:
- Que el proceso requiera menos tiempo que el quantum.
- Que el proceso requiera mas tiempo que el quantum.
· Ventajas: Algunas garantias son asignadas a procesos que tienen una alta prioridad y ademas de que es un algoritmo muy predecible.
· Desventajas: El algoritmo se vuelve muy complejo.
Cambio de contexto: Al final de cada quantum nos encontramos con una interrupcion procedente del temporizacion que provoca que, cada vez que un proceso sea desplazado haya que salvar todos los registros del proceso antiguo y restaurar los del nuevo.
Colas Multinivel (MLQ: multilevel queuest):
Son algoritmos utilizados para situaciones en las que los procesos son clasificables en diferentes grupos.
· Desventaja: No tiene desventaja
· Ventajas: El proceso que se ejecutara sera el de mayor prioridad.
Colas multinivel con realimentacion (MLFQ: multilevel feedback queues):
Son la solucion al problema de la postergacion indefinida, ya que se permite la movilidad entre colas, logrando que un proceso puede pasar de una cola a otra. Sus parametros son los siguientes:
- El numero de colas
- El algoritmo de planificacion de cada cola.
- El metodo para determinar cuando pasa un proceso a una cola de mayor/menor prioridad.
- El metodo para determinar en que cola entrara un proceso cuando este precise un servicio.
· Ventajas: Cada cola posee una politica de planificacion y una prioridad asignada.
· Desventaja: No tiene desventaja.
No hay comentarios:
Publicar un comentario