Diferencia entre la programación prioritaria y el trabajo más largo primero (LJF)

1. Algoritmo de programación de prioridad :
el algoritmo de programación de prioridad ejecuta los procesos según su prioridad. A cada proceso se le asigna una prioridad y el proceso con la prioridad más alta se ejecuta primero. Las prioridades se pueden definir tanto interna como externamente. El sistema decide las prioridades internas según la cantidad de recursos necesarios, el tiempo necesario, etc., mientras que las prioridades externas se basan en el tiempo en que se necesita el trabajo o la cantidad que se paga por el trabajo realizado o la importancia del proceso. La programación prioritaria puede ser preventiva o no preventiva.

Nota –

  • Si dos procesos tienen la misma prioridad, el empate se rompe usando FCFS.
  • El tiempo de espera para el proceso de mayor prioridad siempre es cero en el modo preventivo, mientras que puede no serlo en el caso del modo no preventivo.

Inconvenientes:
El gran problema es la inanición o bloqueo indefinido. Puede suceder que en el flujo de procesos, el sistema siga ejecutando los procesos de alta prioridad y los procesos de baja prioridad nunca se ejecuten.

2. El trabajo más largo primero:
el trabajo más largo primero es un algoritmo de programación no preventivo. Este algoritmo se basa en el tiempo de ráfaga de los procesos. Los procesos se colocan en la cola de espera en función de sus tiempos de ráfaga, es decir, en orden descendente de los tiempos de ráfaga. Como sugiere el nombre, este algoritmo se basa en el hecho de que el proceso con el mayor tiempo de ráfaga se procesa primero. Se considera el tiempo de ráfaga sólo de aquellos procesos que han llegado al sistema hasta ese momento. Su versión preventiva se llama algoritmo Longest Remaining Time First (LRTF) .

Nota:
si dos procesos tienen el mismo tiempo de ráfaga, el empate se rompe con FCFS, es decir, el proceso que llegó primero se procesa primero.
Desventajas-

  • Este algoritmo proporciona un tiempo de espera promedio muy alto y un tiempo de respuesta promedio muy alto para un conjunto dado de procesos.
  • Esto puede conducir al efecto de convoy.
  • Puede suceder que un proceso corto nunca se ejecute y el sistema siga ejecutando los procesos más largos.
  • Reduce la velocidad de procesamiento y, por lo tanto, reduce la eficiencia y la utilización del sistema.

La diferencia entre el trabajo más largo primero (LJF) y el algoritmo de programación prioritaria es la siguiente:

El trabajo más largo primero (LJF) programación de prioridades
Longest Job First (LJF) ejecuta los procesos en función de su tiempo de ráfaga, es decir, en orden descendente de sus tiempos de ráfaga. La programación de prioridades ejecuta los procesos en función de sus prioridades, es decir, en orden descendente de sus prioridades. Un proceso con mayor prioridad se ejecuta primero.
LJF no es preventivo, pero su versión preventiva también se llama algoritmo de tiempo restante más corto primero (SRTF). La programación prioritaria es tanto de naturaleza preventiva como no preventiva.
El tiempo de espera promedio para un conjunto dado de procesos es bastante largo, lo que reduce la efectividad del sistema. No hay idea del tiempo promedio de espera y el tiempo de respuesta.
Es posible que nunca se ejecute un proceso largo y que el sistema siga ejecutando los procesos cortos. El problema del bloqueo de un proceso se puede resolver mediante el envejecimiento, lo que significa aumentar gradualmente la prioridad de un proceso después de un intervalo de tiempo fijo en un número fijo.

Publicación traducida automáticamente

Artículo escrito por mohitg593 y traducido por Barcelona Geeks. The original can be accessed here. Licence: CCBY-SA

Deja una respuesta

Tu dirección de correo electrónico no será publicada. Los campos obligatorios están marcados con *