Sie sind auf Seite 1von 10

2.6 Tcnicas de administracin del planificador.

Algoritmos de planificacin.
Planificacin a plazo fijo.

En la planificacin a plazo fijo, ciertos trabajos se planifican para ser
terminados en un periodo especfico. Estos trabajos tienen un alto valor si se
entregan a tiempo y pueden carecer de valor si se entregan despus del
lmite. La planificacin a plazo fijo es compleja por muchas razones:

* Los usuarios deben proporcionar por adelantado y en forma precisa las
necesidades de recursos de su trabajo. Tal informacin rara vez est
disponible.
* El sistema debe ejecutar el programa de plazo fijo sin una severa
degradacin de servicio para los otros usuarios.
* El sistema debe planificar cuidadosamente las necesidades de recursos
permitiendo un libre trnsito del plazo fijo. Esto puede ser difcil debido a la
llegada de programas nuevos con demandas impredecibles.
* Si se activan muchos trabajos de plazo fijo, la planificacin puede llegar a ser
tan compleja que necesite mtodos de optimizacin sofisticados para asegurar
que el plazo fijo se cumpla.
* El manejo intenso de recursos requeridos por la planificacin de plazo fijo
puede generar una sobrecarga sustancial.

Algoritmo de planificacin de FIFO
Tal vez la disciplina ms simple de planificacin sea la de primeras entradas
primeras salidas (PEPS). Los procesos se despachan de acuerdo con su tiempo
de llegada a la cola de procesos listos. Cuando un proceso tiene la CPU, se
ejecuta hasta terminar. Es junto en el sentido formal, pero algo injusta en cuanto a
que los trabajos largos hacen esperar a los cortos y los trabajos sin importancia
hacen esperar a los importantes. FIFO ofrece variaciones relativamente pequeas
en los tiempos de respuesta y por lo tanto es ms predecible que los otros
esquemas. No es til en la planificacin para los usuarios interactivos porque no
puede garantizar buenos tiempos de respuesta.
El esquema FIFO rara vez se usa como esquema principal en los sistemas
actuales, pero a menudo est incorporado en otros sistemas. Por ejemplo, muchos
esquemas de planificacin despachan los procesos de acuerdo con la prioridad,
pero los procesos con la misma prioridad se despachan de acuerdo con el
esquema FIFO.

Este es un algoritmo que no usa apropiacin, y que consiste en atender a los
procesos por estricto orden de llegada a la lista de procesos listos. Cada proceso
se ejecuta hasta que termina, o hasta que hace una llamada bloqueante (de E/S).
Se trata de una poltica muy simple y sencilla de llevar a la prctica, pero muy
pobre en cuanto a su comportamiento.

Las caractersticas principales de este algoritmo son las siguientes:
No es apreciativa.
Es justa, aunque los procesos largos hacen esperar mucho a los cortos.
Es una poltica predecible.
El tiempo promedio de servicio es muy variable ya que est en funcin del
nmero de procesos y la duracin promedio que tenga.

Media del tiempo de espera:
Caso 1) (0 + 24 + 27) / 3 =17
Caso 2) (6 + 0 + 3) / 3 = 3
En este esquema se tienen tres procesos (P1, P2, P3) listos para ejecutarse, con
un tiempo de ejecucin de 24, 3 y 3 unidades de tiempo (para facilidad tomaremos
milisegundos como unidad de tiempo) respectivamente. Los procesos se ejecutan
en ese mismo orden. El primer proceso se ejecuta de inmediato y no espera
nada.
El segundo proceso espera todo lo que dura en ejecutarse el primer proceso que
son 24 milisegundos. Por ltimo el tercer proceso esperara la suma de lo que
duran en ejecutarse los dos procesos anteriores, o sea, 27 segundos. Todo esto
da como resultado un tiempo promedio de espera de 17 milisegundos. Si en
cambio, el orden en que se ejecuten los procesos es como el caso 2), entonces el
proceso P2 se ejecutara de inmediato, P3 esperara lo que tarde en ejecutarse P2
(3 milisegundos) y P1 esperara lo que duran los dos procesos anteriores,
obteniendo un tiempo promedio de espera de 3 milisegundos.
Como puede verse el tiempo promedio de espera que tengan los procesos
depende por completo del orden en que llegan los procesos a ejecutarse.

SJF
Planificacin del trabajo ms corto (SJF).
La disciplina del trabajo ms corto primero es NO apreciativa y en ella el
trabajo o proceso con tiempo estimado de ejecucin hasta terminacin ms corto,
es el siguiente en ser ejecutado. El SJF reduce el tiempo de espera de los
procesos, sin embargo, tiene una varianza mayor (es decir, es menos predecible)
que en FIFO, sobre todo para los trabajos largos.

SJF favorece a los procesos cortos a costa de los procesos largos.
Adems, selecciona los trabajos que sern atendidos y que dejarn el sistema lo
antes posible. Esto ltimo traduce en listas de espera cortas. El SJF es NO
apropiativo por lo que resulta de poca utilidad en ambientes de tiempo compartido.

Planificacin del Trabajo Ms Corto Primero (SJF)
Es una disciplina no apreciativa y por lo tanto no recomendable en ambientes de
tiempo compartido.
El proceso en espera con el menor tiempo estimado de ejecucin hasta su
terminacin es el siguiente en ejecutarse.

- Los tiempos promedio de espera son menores que con FIFO.
- Los tiempos de espera son menos predecibles que en FIFO.
- Favorece a los procesos cortos en detrimento de los largos.
- Tiende a reducir el nmero de procesos en espera y el nmero de procesos
que esperan detrs de procesos largos.
- Requiere un conocimiento preciso del tiempo de ejecucin de un proceso,
lo que generalmente se desconoce.
- Se pueden estimar los tiempos en base a series de valores anteriores.

Planificacin del Tiempo Restante Ms Corto (SRT)

- Es la contraparte apreciativa del SJF.
- Es til en sistemas de tiempo compartido.
- El proceso con el tiempo estimado de ejecucin menor paraanalizar es el
siguiente en ser ejecutado.
- Un proceso en ejecucin puede ser apropiado por un nuevo proceso con
un tiempo estimado de ejecucin menor.

Tiene mayor sobrecarga que la planificacin SJF.

- Debe mantener un registro del tiempo de servicio transcurrido del proceso
en ejecucin, lo que aumenta la sobrecarga.
- Los trabajos largos tienen un promedio y una varianza de los tiempos de
espera an mayor que en SJF.
- La apropiacin de un proceso a punto de terminar por otro de menor
duracin recin llegado podra significar un mayor tiempo de cambio de
contexto (administracin del procesador) que el tiempo de finalizacin del
primero.
- Al disearse los Sistemas Operativos se debe considerar cuidadosamente
la sobrecarga de los mecanismos de administracin de recursos
comparndola con los beneficios esperados.

Planificacin el Siguiente con Relacin de Respuesta Mxima (HRN)
- Corrige algunas de las debilidades del SJF, tales como el exceso de
perjuicio hacia los procesos (trabajos) largos y el exceso de favoritismo
hacia los nuevos trabajos cortos.
- Es una disciplina no apreciativa.
- La prioridad de cada proceso est en funcin no slo del tiempo de
servicio del trabajo, sino que tambin influye la cantidad de tiempo que
el trabajo ha estado esperando ser servido.
- Cuando un proceso ha obtenido la CPU, corre hasta terminar.
- Las prioridades, que son dinmicas, se calculan segn la siguiente
frmula, donde pr es la prioridad, te es el tiempo de espera y ts es el
tiempo de servicio:

Planificacin del tiempo restante ms corto primero (SRT).

La SRT es apreciativa, en ella el proceso con el tiempo estimado de
ejecucin menor para llegar a su terminacin es el siguiente en ser ejecutado,
incluyendo las nuevas llegadas. En la disciplina SJF, una vez que el trabajo
comienza su ejecucin sigue hasta que termina. En SRT, un proceso en
ejecucin puede ser apropiado por un nuevo proceso con n tiempo estimado
de ejecucin menor.
La SRT tiene una sobrecarga mayor que la SJF. Debe mantener un
registro del tiempo de servicio transcurrido del trabajo en ejecucin y debe
controlar las apropiaciones ocasionales.

Planificacin el siguiente con relacin de respuesta mxima (HRT).

Brinch Hansen (1971) desarroll la estrategia el siguiente con relacin
de respuesta mxima (HRT), que corrige algunas de las debilidades de SJF,
en especial el favoritismo por los tamaos pequeos. La HRT es una disciplina
de planificacin NO apreciativa en la cual la prioridad de cada trabajo est en
funcin, no slo del tiempo de servicio del trabajo, sino del tiempo que un
proceso ha estado esperando a ser servido, Una vez que un trabajo obtiene el
CPU, se ejecuta hasta su terminacin. Las prioridades dinmicas en HRT se
calculan segn la frmula

Tiempo de espera + Tiempo de servicio
Prioridad = Tiempo de servicio

Planificacin de Asignacin en Rueda (RR-Round Robin)

Es un sistema apropiativo. Cada proceso recibe una fraccin de tiempo de
procesamiento para su ejecucin, de manera que cuando se est ejecutando y
excede el tiempo que se le ha concedido, se genera una interrupcin de reloj,
mediante la cual la ejecucin del proceso se detiene y se coloca al proceso al final
de la cola de procesos listos para su posterior ejecucin, seleccionndose a
continuacin un nuevo proceso de la cola para su ejecucin. Si un proceso finaliza
su ejecucin antes de que termine el tiempo que se le ha asignado, este cede el
control, seleccionndose un nuevo proceso de la cola para su ejecucin. Con el
Round Robind, cuando un proceso inicia una operacin de E/S, este es penalizado
respecto de los procesos que no realizan E/S.

Los procesos se despachan en FIFO y disponen de una cantidad limitada de
tiempo de CPU, llamada divisin de tiempo o cuanto. Si un proceso no termina
antes de expirar su tiempo de CPU ocurren las siguientes acciones:
1. La CPU es apropiada.
2. La CPU es otorgada al siguiente proceso en espera.
3. El proceso apropiado es situado al final de la lista de listos.
Es efectiva en ambientes de tiempo compartido. La sobrecarga de la apropiacin
se mantiene baja mediante mecanismos eficientes de intercambio de contexto y
con suficiente memoria principal para los procesos.
Tamao del Cuanto o Quantum
La determinacin del tamao del cuanto es decisiva para la operacin efectiva de
un sistema computacional. Los interrogantes son: cuanto pequeo o grande,
cuanto fijo o variable y cuanto igual para todos los procesos de usuarios o
determinado por separado para cada uno de ellos. Si el cuanto se hace muy
grande, cada proceso recibe todo el tiempo necesario para llegar a su terminacin,
por lo cual la asignacin en rueda (RR) degenera en FIFO. Si el cuanto se hace
muy pequeo, la sobrecarga del intercambio de contexto se convierte en un factor
dominante y el rendimiento del sistema se degrada, puesto que la mayor parte del
tiempo de CPU se invierte en el intercambio del procesador (cambio de contexto) y
los procesos de usuario disponen de muy poco tiempo de CPU.
El cuanto debe ser lo suficientemente grande como para permitir que la gran
mayora de las peticiones interactivas requieran de menos tiempo que la duracin
del cuanto, es decir que el tiempo transcurrido desde el otorgamiento de la CPU a
un proceso hasta que genera una peticin de Entrada / Salida debe ser menor que
el cuanto establecido, de esta forma, ocurrida la peticin la CPU pasa a otro
proceso y como el cuanto es mayor que el tiempo transcurrido hasta la peticin de
Entrada / Salida, los procesos trabajan al maximo de velocidad, se minimiza la
sobrecarga de apropiacin y se maximiza la utilizacin de la Entrada / Salida. El
cuanto optimo vara de un sistema a otro y con la carga, siendo un valor de
referencia 100 mseg (cien milisegundos).

Caractersticas de RR
1. Baja sobrecarga si el cambio entre un proceso y otro es eficiente y los
procesos siempre estn en la memoria principal
2. El tamao ptimo del quantum depende de:

El tipo de sistema.
Las cargas que vaya a soportar el sistema.
El nmero de procesos en el sistema y su tipo.
3. Es la poltica ms usada para tiempo compartido.
4. Ofrece un servicio igual para todos los procesos.
5. Es una poltica apreciativa.
6. Mantiene ms equilibradas las colas de procesos listos y bloqueados.

Virtual Round Robind (vrr)
Este sistema va a permitir solucionar el problema del RoundRobind en relacin al
favorecimiento que este realiza con los procesos orientados a la CPU frente a los
procesos orientados a las operaciones de E/S. El vrr utiliza una cola auxiliar de
espera que incluye aquellos procesos que no hayan consumido completamente el
quanto que tenan asignados al verse detenidos por una operacin de E/S. Esta
cola tiene prioridad respecto a la principal y a los procesos almacenados en ella se
les asigna temporalmente (hasta que se ejecuten de nuevo) un nuevo quanto, que
es el tiempo del quanto principal que no llegaron a consumir antes de ser
bloqueados (el 2o quanto es el quanto principal menos el tiempo del mismo que ya
haya sido consumido por el proceso).

Queves Multinivel

Normalmente, cuando se usa el algoritmo de planificacin mediante
colas multinivel, los procesos se asignan de forma permanente a una cola cuando
entran en el sistema. Por ejemplo, si hay colas diferentes para los procesos de
primer y segundo plano, los procesos no se mueven de una cola a otra, dado que
no pueden cambiar su naturaleza de proceso de primer o segundo plano. Esta
configuracin presenta la ventaja de una baja carga de trabajo de planificacin,
pero resulta poco flexible.
Por el contrario, el algoritmo de planificacin mediante colas multinivel
realimentadas permite mover un proceso de una cola a otra. La idea es separar
los procesos en funcin de las caractersticas de sus rfagas de CPU. Si un
proceso utiliza demasiado tiempo de CPU, se pasa a una a d prioridad ms baja.
Este esquema deja los procesos limitados por E/S y los procesos interactivos en
las colas de prioridad ms alta. Adems, un proceso que est esperando
demasiado tiempo en una cola de baja prioridad puede pasarse a una cola de
prioridad ms alta. Este mecanismo de envejecimiento evita el bloqueo indefinido.
Por ejemplo, considere un planificador de colas multinivel realimentadas con tres
colas. En primer lugar, el planificador ejecuta todos los procesos de la cola 0. Solo
cuando la cola 0 este vaca ejecutara procesos de la cola 1. De forma similar, los
procesos de la cola 2 solo se ejecutaran si las colas 0 y 1 estn vacas. Un
proceso que llegue a la cola 1 desalojara a un proceso de la cola 2 y ese proceso
de la cola 1 ser, a su vez, desalojado por un proceso que llegue a la cola 0.
Un proceso que entre en la cola de procesos preparados se coloca en la cola 0 y a
cada uno de los procesos de esa cola se le proporciona un cuanto de tiempo de 8
milisegundos. Si el proceso no termina en ese tiempo, se pasa al final de la cola 1.
Si la cola 0 est vaca, al proceso que se encuentra al principio de la cola 1 se le
asigna un cuanto de 16 milisegundos. Si no se completa en ese tiempo, se lo
desaloja y se lo incluye en la cola 2. Los procesos de la cola 2 se ejecutan
basndose en una planificacin FCFS, pero solo cuando las colas 0 y 1 estn
vacas.
Este algoritmo de planificacin proporciona la prioridad ms alta a todo proceso
que tenga una rfaga de CPU de 8 milisegundos o menos. Tales procesos
acceden rpidamente a la CPU, concluyen su rfaga de CPU y pasan a su
siguiente rfaga de E/S. Los procesos que necesitan ms de 8 milisegundos y
menos de 24 milisegundos tambin son servidor rpidamente, aunque con una
prioridad ms baja que los procesos ms cortos. Los procesos largos terminan
yendo automticamente a la cola 2 y se sirven, siguiendo el orden FCFS, con los
ciclos de CPU no utilizados por las colas 0 y 1.

En general, un planificador mediante colas multinivel realimentadas se define
mediante los parmetros siguientes:
- El nmero de colas.
- El algoritmo de planificacin de cada cola.
- El mtodo usado para determinar cundo pasar un proceso a una
cola de prioridad ms alta.
- El mtodo usado para determinar cundo pasar un proceso a una
cola de prioridad ms baja.
- El mtodo usado para determinar en qu cola se introducir un
proceso cuando haya que darle servicio.
La definicin del planificador mediante colas multinivel realimentadas le convierte
en el algoritmo de planificacin de la CPU ms general. Puede configurarse este
algoritmo para adaptarlo a cualquier sistema especfico que se quiera disear.
Lamentablemente, tambin es el algoritmo ms complejo, puesto que definir el
mejor planificador requiere disponer de algn mecanismo para seleccionar los
valores de todos los parmetros.

Das könnte Ihnen auch gefallen