ALGORITMOS
Hay dos clase de Algoritmos:
ALGORITMOS NO APROPIADOS
Algoritmo First-Come-First-Served (FCFS): Primero en llegar, primero en ser servido.
Ventajas:
- Fácil de implementar, Basta una cola FIFO.
- Es bastante justo, si entendemos que procesos con menos CPU tienen menos derecho a usarla.
Desventajas:
- Puede provocar baja productividad; efecto "Convoy".
- EJEMPLO: Un proceso limitado por CPU y muchos procesos con E/S muy frecuente.
ALGORITMOS APROPIADOS:
Algoritmo Shortest Remainming Time First (SRTF)
- Es una versión apropiativa de SJF.
- Cada vez que entran trabajos se interrumpe el actual y se compara el tiempo restante de éste con el de los entrantes.
- Si hay un trabajo nuevo más corto que lo que le falta al actual en CPU, echamos el actual y metemos el nuevo.
- De nuevo, se supone que se conocen los tiempos de uso futuro de CPU de antemano. Una versión práctica debe hacer uso de una estimación.
Algoritmo Round-Robin (RR)
- Podemos traducirlo como asignación circular o por torneo.
- Cada proceso tiene un tiempo limite de uso de CPU llamado quantium Q.
- Los procesos preparados se organizan en una cola FIFO.
Si A está ejecutando y alcanza el quantium --> cambio de contexto:
Se pasa el primero de la cola a CPU y se inserta A al final de la cola.
Un temporizador (interrupción de reloj) se encarga de despertar al planificador para que compruebe si debe actuar o no.
Ventajas: Es fácil de implementar. Es el algoritmo más justo: todos los procesos tienen garantizada su porción de CPU.
Algoritmo Colas Multinivel:
- Mayores prioridades para procesos del sistema, procesos foreground interactivos, o procesos con poca CPU. Usamos RR.
- Menor prioridad para procesos background.Usamos FCFS.
- Si entra un trabajo con mayor prioridad, desbanca a los de menor.
- Otra opción: Freccionar el tiempo entre colas (Ej: 80% para la RR y 20% para las colas FCFS).
0 comentarios:
Publicar un comentario