Sunteți pe pagina 1din 3

Algoritmo de planificación por prioridad

En muchos sistemas, los procesos tienen prioridades asignadas, y el planificador


escogerá aquel proceso con mayor prioridad.

Cuando un proceso debe ser seleccionado, el planificador por prioridades


seleccionará aquel proceso que tenga mayor prioridad. Si hay más de un proceso
entonces se deberá seguir alguna política de selección.

Un problema que presenta un esquema de planificación por prioridades puro es que


los procesos con la prioridad más baja pueden sufrir de inanición o bloqueo
indefinido. Un proceso que está listo para correr pero espera porque siempre hay
procesos con prioridad más alta.

Para evitar este problema, se puede ir incrementando gradualmente la prioridad de


los procesos (envejecimiento).

SJF es un caso especial de planificación por prioridad, donde la prioridad es el inverso


del valor estimado del próximo ciclo de CPU (a menor ciclo, mayor prioridad).

Ejemplo:

 Sea la siguiente descripción de carga:


Trabajo Ráfaga CPU Prioridad

A 8 2

B 4 1

C 9 4

D 5 2

Suponer el orden de llegada el indicado.

 Calcular tiempo de espera y tiempo de retorno de cada trabajo, tiempo medio de


espera y retorno, cuando la planificación se realiza mediante el algoritmo de
prioridades y del tipo no apropiativo.
SOLUCIÓN:

Proceso Tiempo Priorid Tiempo de Tiempo de Tiempo de Turnaround Tiempo de


de lleg. ad Servicio Comienzo Finalización Espera

A 0 2 8 0 8 8 0

B 1 1 4 22 26 26-1=25 22-1=21

C 2 4 9 8 17 17-2=15 8-2= 6

D 3 2 5 17 22 22-3=19 17-3=14

Promedio 16.75 10.25

Este algoritmo puede ser apropiativo y no apropiativo. En el caso de apropiativo,


cuando un proceso llega a la cola de procesos listos, su prioridad es comparada con
la prioridad del proceso que está corriendo. Si la prioridad del nuevo proceso es
mayor, entonces se atiende al nuevo proceso.
Planificación de colas múltiples con prioridades

Mediante este algoritmo de planificación (ver figura) se le asigna a cada proceso una
prioridad que deberá coincidir con alguna de las prioridades asignadas a las colas de
procesos listos. Cuando un proceso entre en el sistema se dirigirá a la cola que le
corresponda, no pudiendo cambiar de cola de procesos listos mientras esté en el
sistema, al contrario que la planificación con realimentación.

El planificador seleccionará el proceso que tenga mayor prioridad, esto es, el proceso
que se encuentre en la cola de mayor prioridad, y dentro de cada cola se seleccionará
el proceso de acuerdo a la política de planificación específica a dicha cola.
Un problema que presentan estos algoritmos de planificación es que los procesos de
prioridad más baja pueden sufrir de inanición. Este problema ocurre, como era de
esperar, si hay un flujo continuo de procesos listos de alta prioridad. Para superar
este problema, se puede pensar en diseñar un método que pueda cambiar la
prioridad del proceso en función de su edad, esto es, aumentar la prioridad por
envejecimiento.

S-ar putea să vă placă și