HIGHEST RESPONSE RATIO (HNR) 3.5

 


Que es el algoritmo HRRN

Es el que muestra mayor tasa de respuesta Al ser no apropiativo, selecciona el proceso con mayor tasa de respuesta;

Trespuesta = (Tespera + Tservicio) / Tservicio

El algoritmo pone a ejecutar el proceso con mayor tasa de respuesta. Donde el tiempo de espera es el insumido desde que el proceso pasa de la cola de nuevos a la cola de listos. s = Tiempo de llegada + Tiempo actual.

caracteristicas

  • El algoritmo HRRN «Highest Response Ratio Next» corrige algunas deficiencias de SPN, particularmente el retraso excesivo de trabajos largos y el favoritismo excesivo para los trabajos cortos. HRN es un disciplina de planificación no apropiativa en la cual la prioridad de cada proceso no sólo se calcula en función del tiempo de servicio, sino también del tiempo que ha esperado para ser atendido. Cuando un trabajo obtiene el procesador, se ejecuta hasta terminar.

Con este algoritmo los procesos cortos tendrán preferencia no obstante los procesos con tiempo de procesamiento más largo no se desatenderán haciendo así que no puedan darse problemas de inanición.

Cuando no se puede averiguar el tiempo estimado de servicio de varios procesos no puede utilizarse los algoritmos SPN, SRT y HRRN así pues se puede utilizar otra forma para establecer ciertas prioridades para los trabajos más cortos es penalizar a los trabajos que han estado más tiempo ejecutandose.

  • La forma en que trabaja este algoritmo es mediante expulsión y se utiliza un mecanismo de prioridades dinámico. Se crean varias colas de prioridades, de esta forma un proceso que acabe de entrar al sistema se colocará en la cola de más prioridad, después de su primera expulsión pasará a la una segunda cola de listos con una prioridad menor que la primera. De esta forma cada vez que un proceso sea expulsado pasará a estar en una cola de listos de una prioridad menor hasta que llegue a una cola de mínima prioridad siguiendo esta última una poĺitica de turno rotatorio pues no puede descender más.

Uno de los grandes problemas de este algoritmo es que puede ser ineficiente e incluso ocurrir inanición para procesos largos si no paran de entrar nuevos procesos en el sistema, una forma de solucionar dicho problema es variar los tiempos de expulsión en cada cola.

ejemplo 

Por ejemplo la primera cola tendría una unidad de tiempo mientras que la segunda tendría dos unidades de tiempo y así hasta la cola n.

A pesar de la solución mencionada puede darse el caso de inanición para procesos grandes, para evitar esto puede moverse a los procesos a colas de mayor prioridad después de permanecer cierto tiempo en su cola actual.

La mayoría de los algoritmos de planificación apropiativos emplean el uso de prioridades de acuerdo con algún criterio. Cada proceso tiene una prioridad asignada y el planificador seleccionará siempre un proceso de mayor prioridad antes que otro de menor prioridad.




Comentarios

Entradas populares