Вы находитесь на странице: 1из 23

3.- PLANIFICACIN DE PROCESOS.

Justificacin y generalidades. Cuando son ejecutables varios procesos, tomando en cuenta la existencia de
multiprogramacin y de tiempo compartido el sistema operativo debe decidir
cal conviene ejecutar primero . La parte del SO a la que concierne esta decisin
se llama planificador de procesos y los algoritmos que utiliza se denominan
algoritmos de planificacin de procesos.
A la hora de planificar procesos es importante estimar la carga de CPU versus
demanda de E/S de los mismos, pues interesa que haya un equilibrio entre las
dos.
ELABORACION DEL ALGORITMO DE PLANIFICACION:
1.

IMPARCIALIDAD.- Asegurar que cada proceso tenga la parte que le


corresponda de la CPU.
2.
EFICIENCIA.- Mantener el CPU ocupada el 100% del tiempo.
3.
TIEMPO DE RESPUESTA.- Minimizar el tiempo de respuesta para usuarios
interactivos.
4.
CAMBIO DE POSICION.- Minimizar el tiempo que los usuarios de un lote
deben esperar para obtener salida.
5.
RENDIMIENTO.- Maximizar el nmero de trabajos que se procesan por hora.
En un sistema multiprogramado, la memoria principal contiene varios
procesos los mismos que alternan entre usar el procesador y esperar
algn suceso como una operacin de E/S. El procesador (es) esta
ocupado con un proceso y los dems procesos esperan.
La clave de esta multiprogramacin esta en la PLANIFICACION.
El propsito de la planificacin del procesador es asignar los procesos
al procesador (es) para que sean ejecutados a lo largo del tiempo
para que se cumplan objetivos del sistema como:
El tiempo de respuesta.
La productividad.
Eficiencia del procesador.
En muchos sistemas la planificacin se divide en tres funciones
independientes:
Planificacin a largo plazo.
Planificacin a medio plazo.
Planificacin a corto plazo.

Ejecutando
Listo
Bloqueado
Corto Plazo

Bloqueado
suspendido

Listo
suspendido
Medio Plazo
Nuevo

Salida
Largo Plazo

La planificacin a largo plazo se lleva a cabo al crear un nuevo


proceso. Se corresponde con la decisin de aadir un nuevo
proceso al conjunto de procesos que estn activos.
La planificacin a medio plazo forma parte de la funcin de
intercambio. Esta es la decisin de aadir un proceso a los que
se encuentran en la memoria principal y estn disponibles para
la ejecucin.
La planificacin a corto plazo consiste en decidir que proceso en
estado listo ser el que se ejecute a continuacin.

TIPOS DE PLANIFICACION
LA PLANIFICACION A LARGO PLAZO:
La planificacin a largo plazo determina cuales son los programas
admitidos en el sistema. De esta forma, controla el grado de
multiprogramacin. Unas ves admitidas, un trabajo o un programa de
usuario se convierten en un proceso y se aade a la cola del
planificador a corto plazo. En algunos sistemas, un proceso recin
creado comienza en situacin de suspendido, en cuyo caso se aade
a
la
cola
del
planificador
a
medio
plazo.

En un sistema de proceso por lotes, o bien en la parte de proceso por


lotes de un sistema operativo de carcter general, los procesos recin
incorporados se encaminan hacia el disco y permanecen detenidos en
una cola de procesos por lotes. El planificador a largo plazo crear
procesos a partir de la cola cuando sea posible. Dos decisiones entran
en juego en este sistema. Primero, el planificador debe decidir si el
sistema operativo puede acoger uno o mas procesos adicionales.
Segundo, el planificador debe decidir que trabajo aceptar y convertir
en procesos; tomando estas consideraciones brevemente.
La decisin de cundo crear un nuevo proceso viene dada, en
general, por el grado de multiprogramacin deseado. Cuando ms
procesos se crean, menos es el porcentaje de tiempo en el que cada
proceso se puede ejecutar (es decir que compiten ms procesos por
la misma cantidad de tiempo de procesador). Asi pues, el planificador
a largo plazo puede limitar el grado de multiprogramacin para
ofrecer un servicio satisfactorio al conjunto de procesos actual. Cada
ves que finaliza trabajo, el planificador puede tomar la decisin de
aadir uno o mas trabajos a los nuevos. Adems si la fraccin de
tiempo que el procesador esta ocupado excede un cierto umbral, se
puede volver
a
invocar
al
planificador
a
largo
plazo.
La decisin de cul va a ser el siguiente proceso a admitir puede
seguir un simple algoritmo primero en llegar/primero en
servirse(FCFS) o bien puede basarse en alguna herramienta de
gestin de rendimiento del sistema. El criterio empleado puede tener
en cuenta prioridades, tiempo de ejecucin esperados y exigencias de
E/S.
Para programas interactivos en un sistema de tiempo compartido,
cuando un usuario intenta conectarse al sistema, se genera una
solicitud para crear un proceso. Los usuarios de tiempo compartido no
pueden ser puestos en cola y hacerles esperar hasta que el sistema
pueda aceptarlos. Por el contrario, acepta todas las llegadas
autorizadas hasta que el sistema se sature de acuerdo con alguna
medida de saturacin predefinida. Llegando a este punto, las
solicitudes de conexin se responden con un mensaje que indica que
el sistema est completo y que debe intentarse ms tarde.

LA PLANIFICACION A MEDIO PLAZO:


La planificacin a medio plazo forma parte de la funcin de
intercambio. La decisin de cargar un proceso en la memoria principal
se basa en la necesidad de controlar el grado de multiprogramacin.
En un sistema que no emplee memoria virtual, la gestin de, memoria
tambin es un punto muy importante que tratar. De esta manera la
decisin de cargar en las memorias tendr en cuenta las necesidades
de memoria del proceso descargado.
LA PLANIFICACION A CORTO PLAZO:
Esta planificacin se ejecuta con poca frecuencia, tomando una
primera decisin sobre tomar o no un nuevo proceso y cual escoger.
El planificador a medio plazo se ejecuta con algo ms de frecuencia,
para tomar la decisin del intercambio.
Esta planificacin tambin es conocida como distribuidor (dispatcher),
es el de ejecucin ms frecuente y toma decisiones con un mayor
detalle sobre el proceso que se ejecutar a continuacin.
El planificador a corto plazo se ejecuta cuando ocurre un suceso que
pueda conducir a la interrupcin del proceso actual o que ofrece la
oportunidad de expulsar de la ejecucin al proceso actual a favor de
otro. Como por ejemplo:

Interrupciones del reloj.


Interrupciones de E/S.
Llamadas al sistema operativo.
Seales.

ALGORITMOS DE PLANIFICACIN
CRITERIOS DE PLANIFICACIN A CORTO PLAZO
Un solo procesador puede ser compartido entre varios procesos con
cierto "algoritmo de planificacin", este determina cundo detener el
trabajo en un proceso para dar servicio a otro distinto que tambin
requiere ser atendido; cabe aclarar que cuando ms de un proceso es
ejecutable desde el punto de vista lgico, es el Sistema Operativo el
encargado de decidir cul de ellos se debe ejecutar en primer
trmino, y lo realiza a travs del "Planificador", utilizando dichos
algoritmos de planificacin.
Para evaluar las diversas estrategias de planificacin a adoptar fijan
un conjunto de pautas, mecanismos o criterios a seguir,
pertenecientes a la "planificacin a corto plazo o de bajo
nivel"(descripta en el tem anterior); su "principal objetivo" es dividir
el tiempo del procesador a fin de "optimizar" uno o ms elementos
del comportamiento del sistema.
Como primera medida podemos diferenciar determinados aspectos
entre dos clasificaciones de criterios:
1- Criterios orientados al usuario.
2- Criterios orientados al sistema.
Ambos son caracterizados en el siguiente cuadro comparativo:
Enfoque

Orientados al Sistema
Comportamientos del sistema tal
y como lo perciben los usuarios y
los procesos individuales.

Objetivo -Maximizar la productividad, til


s
para el rendimiento del sistema.
- Optimizar los elementos que lo
componen
- Evitar la sobrecarga, al llegar a
un nivel de agotamiento no crear
nuevos procesos y esperar la
liberacin
de algunos.

Orientados al Usuario
Centralizados en la
eficiencia y eficacia en el
uso del procesador
- Ofrecer un buen servicio
a varios usuarios a travs
de una poltica de
planificacin.
-Definir mecanismos para
agilizar y efectivizar los
procesos a nivel usuario.
- Mantener permanentes
las caractersticas de los

servicios a pesar de la
cantidad de trabajos a
ejecutarse
Es importante sealar que estos criterios son dependientes entre s y
es imposible optimizarse simultneamente, ya que obtener un buen
servicio para los usuarios puede generar a su vez una sobrecarga en
el sistema y reducir la productividad, pues cada proceso es nico e
impredecible debido a que sus requerimientos pueden resultar
distintos
con
respecto
a
otro
proceso.
En el siguiente esquema de llaves se considera otra clasificacin,
adems de las citadas anteriormente, como ser la relativa al
rendimiento de los sistemas y usuarios y aquellos que no lo son:
: Respecto del rendimiento: son criterios cuantitativos y por ello
evaluados fcilmente. Por ejemplo, el tiempo de respuesta y la
productividad.
: Otros criterios no relativos al rendimiento: son criterios cuantitativos
y no pueden ser medibles con facilidad. Por ejemplo la previsibilidad.
Esquema de llaves de los criterios de planificacin:

A.1.1 (T.Ret) Intervalo de tiempo transcurrido entre el inicio y fin de


un proceso (suma del tiempo de ejecucin real y el consumido por la
espera
de
recursos).
A.1.2 (T. Resp) Perodo de tiempo transcurrido desde que se emite

una solicitud hasta que la respuesta comienza a recibirse; es mejor


medida que la anterior, con respecto al usuario. El criterio adoptado
es minimizarlo, y maximizar el nmero de usuarios interactivos que lo
perciban.
A.1.3 (Plaz) Cuando se puede prever un plazo para el fin de un
proceso, otras metas deben cooperar con este criterio para maximizar
su
resultado.
A.2.1 (Prev) Se deben contemplar los mecanismos necesarios que
eviten alteraciones en el trmino de los procesos, debindose
ejecutar aprximada-mente en el mismo tiempo y costo, sin importar
la
carga
del
sistema.
B.1.1 (Produc) Maximizar el nmero de procesos terminados por
unidad de tiempo. Depende de la longitud media de cada proceso y la
poltica de planifi-cacin usada para el manejo del procesador.
B.1.2 (Util. Del Proc) Porcentaje de tiempo en el que el procesador
est ocupado, criterio de menor importancia en sistema de
monousuario y de tiem-po real no as en sistema compartido.
B.2.1 (Equi) Este criterio garantiza el justo trato de los procesos, en
ausencia de direccin por parte del usuario o del sistema.
B.2.2 (Prio) Al impartir prioridades a los procesos, deben favorecer
los de mayor prioridad y luego aquellos de menor jerarqua.
B.2.3 (Equi. De Recur.) Los recursos del sistema deben mantener
ocupados y favorecer a aquellos procesos que utilicen los que son
poco requeridos o se encuentren liberados. Criterio tambin aplicable
a la planificacin a medio y largo plazo.
En sntesis, en el diseo de una poltica de planificacin participan
compromisos y requisitos opuestos, contradictorios y la importancia
que stos contengan depender de la naturaleza y el empleo del
sistema.

Primero en llegar, primero en ser servido (FCFS First come first


served)
(Algoritmo apropiativo) Con mucha diferencia, es el algoritmo de planificacin
ms sencillo. Esto es, el primer proceso en solicitar la CPU es el primero en
recibir la asignacin de la misma. La implementacin del FCFS se realiza
fcilmente mediante una cola FIFO. Cuando un proceso entra en la cola de
preparados o listos para la ejecucin (ready queue), su PCB se enlaza al final
de la cola.
Cuando la CPU queda libre, sta se le asigna al proceso situado al principio de
la cola. Entonces el proceso en ejecucin se elimina de la cola. El cdigo para
la planificacin FCFS es sencillo de escribir y de comprender.
FCFS rinde mucho mejor con procesos largos que con procesos cortos.
Sin embargo, las prestaciones del FCFS son , con frecuencia, bastante pobres.

Los problemas que presenta son:


1.
2.
3.
4.

El tiempo medio de espera suele ser elevado.


Bajo nivel de utilizacin de la CPU.
Pobre tiempo de respuesta en procesos cortos en esquemas con mucha carga.
Tiende a favorecer a los procesos con carga de CPU frente a los que tienen carga de
E/S.
5. Uso ineficiente de los dispositivos de E/S.

Turno rotatorio (RR Round robin)


(Algoritmo no apropiativo) El algoritmo de planificacin round-robin fue
especialmente diseado para sistemas en tiempo compartido. Se define una
pequea unidad de tiempo comn llamada quantum de tiempo o time slice, que
generalmente tiene un valor entre 10 y 100 milisegundos. La cola de listos se
trata como una cola circular. El planificador de CPU recorre la cola asignando el
procesador a cada proceso durante un intervalo de tiempo de hasta un
quantum.
Para implementar la planificacin RR, la cola se mantiene como una cola de
procesos FIFO. El planificador de la CPU selecciona el primer proceso de la
cola, y nicamente puede salir del estado de ejecucin por tres motivos: que
termine su ejecucin, se proceda al llamada a una E/S y el proceso se quede
bloqueado o que se genere una interrupcin por haber superado un quantum
de ejecucin del proceso.
Si hay n procesos en la cola y el quantum de tiempo es q, entonces cada
proceso obtiene 1/n del tiempo de CPU en fragmentos de al menos q unidades
de tiempo cada vez. Cada proceso tiene que esperar no ms de (n-1) x q
unidades de tiempo hasta su quantum de tiempo siguiente.
El conflicto surge en el momento de decidir la duracin del quantum de tiempo
para cada proceso. Si el quantum es muy pequeo, produce mucho overhead
por la gran cantidad de cambios de contexto de ejecucin que hace el sistema
operativo. Si por el contrario, el quantum es muy grande produce un tiempo de
reaccin muy pobre porque los procesos en cola de listos esperan demasiado y
si es infinito se convierte en FCFS. Es decir que para que sea eficiente, la
duracin del context switch debe ser mucho menor que el time slice.
Una desventaja del turno rotatorio es el tratamiento que hace si existe una
mezcla de procesos limitados por CPU y procesos limitados por E/S. En este
caso, sucedera lo siguiente: un proceso limitado por E/S utiliza el procesador
durante un periodo corto y despus se bloquea en la E/S; espera a que se
complete la operacin de E/S y entonces vuelve a la cola de listos. Por otro
lado, un proceso limitado por procesador generalmente hace uso de un cuanto
de tiempo completo cuando se ejecuta e inmediatamente retorna a la cola de
listos. As pues, los procesos con carga de procesador tienden a recibir una
porcin desigual de tiempo de procesador, lo que origina un rendimiento pobre
de los procesos con carga de E/S, un mal aprovechamiento de los dispositivos
de E/S y un incremento de la variabilidad del tiempo de respuesta.

Para solucionar este problema se implementa un algoritmo llamado VRR


(virtual round-robin). La nueva caracterstica consiste en una cola FCFS auxiliar
a la que se desplazan los procesos una vez que son liberados de la espera por
E/S. Al tomar una decisin sobre el siguiente proceso a expedir, los procesos
de la cola auxiliar tienen preferencia sobre los de la cola principal de listos.
Cuando se expide un proceso desde la cola auxiliar, no se puede ejecutar ms
que un tiempo igual al cuanto bsico menos el tiempo total de ejecucin
consumido desde que fue seleccionado por ltima vez en la cola de listos.

Primero el proceso ms corto (SPN Shortest process next / SPF


Shortest process first)
(Algoritmo apropiativo) Este algoritmo consiste en seleccionar el proceso con
menor tiempo esperado de ejecucin. La mejora del rendimiento global es
significativa en trminos de tiempo de respuesta, sin embargo, se incrementa la
variabilidad de los tiempos de respuesta, especialmente para procesos largos,
reduciendo as la previsibilidad.
Una dificultad que plantea SPN es la necesidad de conocer o estimar el tiempo
exigido por cada proceso. Para ello, generalmente se toma el promedio

exponencial que permite predecir valores futuros a partir de una serie de


valores pasados.
Sn+1 = Tn + (1 - )Sn
Donde:
Ti = Tiempo de ejecucin en el procesador para el i-simo caso del proceso
(tiempo total de ejecucin para un trabajo por lotes; tiempo de rfaga de
procesador para trabajos interactivos).
Si = Valor pronosticado para el caso i-simo.
= Factor constante de ponderacin. (0 <= <= 1) (generalmente se utiliza
0,5)
determina el peso relativo dado a las observaciones ms y menos recientes.
Utilizando un valor constante de , independiente del nmero de
observaciones pasadas, se llega a una situacin en la que se tienen en cuenta
todos los valores pasados, pero los ms distantes reciben un peso menor. Para
verlo con ms claridad, consideremos el siguiente desarrollo de la ecuacin
anterior:
Sn+1 = Tn + (1 - ) Tn-1 + + (1 - )1 Tn-i + ... + (1 - )nS1
S1 = Valor pronosticado para el primer caso; no calculado.
La ventaja de emplear un valor cercano a 1 es que la media reflejar
rpidamente los cambios repentinos en la cantidad observada. La desventaja
es que si se produce un breve aumento en los valores observados y despus
se vuelve a estabilizar en algn valor medio, el empleo de un valor grande a
generar cambios bruscos en la media.
Un riesgo que existe en SPN es la posibilidad de inanicin para los procesos
largos mientras exista un flujo continuo de procesos ms cortos. Por otro lado,
aunque SPN reduce el sesgo favorable a los procesos largos, no es
conveniente para entornos de tiempo compartido o de procesamiento de
transacciones, debido a que es un algoritmo apropiativo.
Otra observacin importante es que se emplea una gran prdida de tiempo
para efectuar este clculo por lo que no se utiliza este algoritmo.

Menor tiempo restante (SRT Shortest remaining time first)


Esta es la versin no apropiativa del SPN, en la que el planificador siempre
elige al proceso que le queda menos tiempo esperado de ejecucin. Por lo
tanto, el planificador debe disponer de una estimacin del tiempo de proceso
para poder llevar a cabo la funcin de seleccin, existiendo el riesgo de
inanicin para procesos largos.

El algoritmo SRT no presenta el sesgo favorable a los procesos largos del


FCFS. Al contrario que el turno rotatorio, este algoritmo es ms eficiente debido
a que no se produce overhead muy frecuente debido a que las interrupciones
no son producidos por el reloj del sistema. Por el contrario, se deben tener en
cuenta los tiempos de servicio transcurridos, lo que contribuye a la sobrecarga.
El SRT tambin debera producir tiempos de retorno mejores que los del SPN,
puesto que los trabajos cortos reciben una atencin inmediata y preferente a
los trabajos largos.

Primero el de mayor tasa de respuesta (HRRN Highest


response ratio next)
(Algoritmo apropiativo) Cuando el proceso actual termina o se bloquea, se elige
el proceso listo con un mayor valor de R. Donde R es:
R = (w + s) / s
R = tasa de respuesta.
w = tiempo consumido esperando al procesador.
s = tiempo de servicio esperado.
La decisin de planificacin se basa en una estimacin del tiempo de retorno
normalizado. Lo que se intenta es reducir al mximo las proporciones de
tiempo R.
Este mtodo es atractivo porque tiene en cuenta la edad del proceso. Aunque
se favorece a los trabajos ms cortos (un denominador menor produce una
razn mayor), el envejecimiento sin que haya servicio incrementa el valor de la
razn, de forma que los procesos ms largos puedan pasar, en competicin
con los ms cortos. El tiempo esperado de servicio debe estimarse antes de
emplear la tcnica de la mayor tasa de respuesta.

REALIMENTACIN
Si no se dispone de ninguna informacin sobre la longitud relativa de los diversos
procesos , no se puede emplear ninguno de los algoritmos anteriores
Si no es posible utilizar como base el tiempo de ejecucin restante, se emplea el tiempo
de ejecucin consumido hasta el momento.
Para ello : la planificacin es destacada ( con un cuanto de tiempo) y se emplea un
mecanismo dinmico de prioridades. Cuando un proceso entra por primera vez en el
sistema , se sita en RQ0. Cuando vuelve al estado de Listo , despus de su primera
ejecucin, se incorpora a RQ1.Despus de cada ejecucin siguiente, se le degradar al
nivel inmediatamente inferior de prioridad . Un proceso corto terminar rpidamente,
sin descender demasiado en la jerarqua de colas de Listos. Un proceso largo ser
gradualmente llevado hacia abajo. .De esta manera se favorece a los procesos cortos
frente a los ms viejos y largos. Se usar un simple mecanismo de FCFS dentro de
cada cola, excepto en la menor prioridad. Una vez en la cola de menor prioridad, un
proceso no puede descender , sino que vuelve a la misma cola repetidamente hasta
completar su ejecucin. Por lo tanto esta cola se trata como un turno rotatorio.
A continuacin se muestra el mecanismo de planificacin con realimentacin
mostrando el camino que sigue un proceso a travs de varias colas. Este enfoque se
denomina realimentacin multinivel (FB. Feedback), lo que quiere decir que el sistema
operativo asigna al procesador un proceso y cuando el proceso se bloquea o es
expulsado , lo devuelve a una determinada cola de prioridad.

Existe un gran nmero de variantes de este esquema. Una versin simple consiste en
realizar la apropiacin de la misma forma que el turno rotatorio: a intervalos
peridicos.
Un problema es que el tiempo de retorno de los procesos mayores puede alargarse de
forma alarmante . En realidad puede ocurrir inanicin si llegan regularmente nuevos
trabajos al sistema. Para compensar , se puede variar el tiempo de apropiacin en
funcin de la cola: un proceso par RQ0 dispone de una unidad de tiempo de ejecucin
hasta ser expulsado: a un proceso planificado para RQ1 se le permite ejecutar durante 2
unidades de tiempo y as sucesivamente . En general un proceso planificado para RQi
puede ejecutar 2i unidades de tiempo antes de ser expulsado.
Incluso permitiendo una mayor asignacin de tiempo a las prioridades menores , un
proceso largo an puede sufrir inanicin . Un posible remedio consiste en promocionar
un proceso a una cola de mayor prioridad despus de que este esperando servicio en su
cola actual durante un cierto de tiempo.
COMPARACIN DE RENDIMIENTOS
El rendimiento de las distintas polticas de planificacin es un factor crtico en la
eleccin de una poltica . Sin embargo , es imposible hacer una comparacin definitiva
porque el rendimiento relativo depende de una gran variedad de factores, incluyendo
la distribucin de probabilidad de los tiempos de servicios de los procesos, la
eficiencia de la planificacin y de los mecanismos de cambio de contexto , la
naturaleza de las peticiones de E/S y el rendimiento del subsistema de E/S. No
obstante, a continuacin se intentarn esbozar algunas conclusiones generales.

Anlisis de Colas
Para ello se hace uso de frmulas de colas , haciendo la suposicin habitual de que las
llegadas siguen una Poisson y los tiempos de servicio una funcin exponencial
En primer lugar , hay que observar que cualquier disciplina de planificacin que elija
el siguiente elemento a servir independientemente del tiempo de servicio cmplela
siguiente relacin:

donde:
Tr = tiempo de retorno o tiempo de estancia; tiempo total en el sistema, espera ms
ejecucin.
Ts = Tiempo medio de servicio; tiempo medio consumido en el estado de Ejecucin.
p = utilizacin del procesador.
Un planificador basado en prioridades , en el que la prioridad de cada proceso se
asigna independientemente del tiempo esperado de servicio, proporciona el mismo
tiempo medio de retorno y tiempo medio de retorno normalizado que un simple
FCFS. Es ms, la presencia o ausencia de apropiacin no marca diferencias entre las
medias.

Con la excepcin del turno rotatorio y del FCFS , las diversas disciplinas la
planificacin vistas hasta ahora hacen elecciones en funcin del tiempo esperado de
servicio. Por desgracia resulta bastante difcil construir modelos analticos fiables para
estas disciplinas. Sin embargo es posible hacerse una idea del rendimiento relativo de
dichos algoritmos de planificacin en comparacin con el FCFS, considerando una
planificacin por prioridades donde la prioridad esta en funcin del tiempo de
servicio.
Si la planificacin se hace en funcin de prioridades y si los procesos se asignan a una
clase de prioridad segn su tiempo de servicio , entonces aparecen diferencias.
A continuacin se muestran las formulas resultantes con dos clases de prioridad , con
tiempos de servicio diferentes para cada clase .

En la tabla el valor de hace referencia a la tasa de llegada. Estos resultados se pueden


generalizar a cualquier numero de clases de prioridad. Las frmulas son diferentes para
la planificacin no preferente y preferente .en el ltimo caso se supone que un proceso
de menor prioridad es interrumpido inmediatamente cuando uno de mayor prioridad
esta listo.
Ejemplo:
Considerando dos clases de prioridad , con igual nmero de llegadas de procesos a cada
clase y con tiempo medio de servicio para la clase de inferior prioridad cinco veces
mayor que el de la clase de mayor prioridad . De este modo se prefiere dar preferencia
a los procesos cortos. A continuacin se muestra el resultado global:

Si se da preferencia a los procesos ms cortos se mejora el tiempo de retorno


normalizado. Como podra esperarse, la mejora es mayor cuando se emplea
apropiacin. Sin embargo el rendimiento total no se ve muy afectado.
Pero surgen diferencias significativas cuando se consideran las dos clases de prioridad
de forma separada.
A continuacin se muestran los resultados para los procesos ms cortos y de prioridad
superior:

Para comparar, la lnea superior del grfico indica que no se emplean las prioridades si
no que simplemente se observa el rendimiento relativo de la mitad de los procesos que
presentan menor tiempo de procesamiento . Las otras dos lneas indican que a estos
procesos se les asigna una prioridad mayor. Cuando el sistema ejecuta con planificacin
no preferente por prioridades, las mejoras son significativas. Son incluso mayores
cuando se emplea apropiacin.
A continuacin se muestra el mismo anlisis para los procesos largos y de prioridad
inferior.

En el grfico anterior los procesos sufren una degradacin del rendimiento cuando se
utiliza la planificacin por prioridades.
Sistemas de Colas
Colas de un solo servidor:
El sistema de colas ms simple es el siguiente:

El elemento central del sistema es un servidor , que proporciona cierto servicio a los
individuos. Al sistema llegan individuos de una poblacin para ser servidos. Si el
servidor esta libre , se sirve inmediatamente al individuo en otro caso el individuo se
aade a una fila de espera. Cuando el servidor a terminado de servir a un individuo ,
ste sale del servicio. Si hay individuos esperando en la cola , se expide uno
inmediatamente hacia el servidor. El servidor en este modelo puede representar
cualquier cosa que realice una funcin o servicio sobre una coleccin de individuos
( por ejemplo un procesador ofrece servicio a los procesos; una lnea de transmisin
ofrece un servicio de transmisin para paquetes o marcos de datos; un dispositivo de
E/S ofrece servicio de lectura escritura a las peticiones de E/S.
En el grfico existen los siguientes parmetros asociados con un modelo de colas .
Los individuos llegan al servicio con una tasa media de llegada (individuos que
llegan por segundo)
En un instante dado , en la cola habr cierto nmero de individuos ( 0 o ms), el nmero
medio de individuos esperando es w y el tiempo medio que un individuo debe esperar es
Tw .El valor de Tw es la media de todos los individuos que llegan incluyendo aquellos
que no tienen que esperar nada . El servidor gestiona los individuos entrantes con
tiempo medio de servicio Ts, este es el intervalo de tiempo entre que se expide un
individuo hacia el servidor y la salida de dicho individuo . La utilizacin p es la
fraccin de tiempo que el servidor esta ocupado , medida a lo largo de un cierto
intervalo de tiempo El parmetro r es el nmero medio de individuos en el sistema
incluyendo al individuo que esta en el servicio ( si no lo hay) y a los individuos que
estn esperando ( si no los hay) ; Tr es el tiempo medio que un individuo pasa en el
sistema , tanto esperando como en servicio este tiempo se llama tiempo de estancia.
La capacidad de la fila de espera es infinita , los individuos no se rechazan nunca del
sistema, nicamente son retrasados hasta que se les pueda servir, entonces la tasa de
salida es igual a la tasa de llegadas. A medida que s e incrementan la tasa de llegadas
que es el porcentaje del trfico que pasa por el sistema , se incrementa la utilizacin y
con ella , la congestin . La fila de espera se hace ms larga aumentando el tiempo de
espera . Con p =1 el servidor se satura funcionando el 100% del tiempo Entonces la tasa
mxima terica de entrada que puede manejar el sistema es :
max = 1/Ts

Pero las filas en espera se hacen muy largas cuando se est prximo a la saturacin del
sistema y crece sin lmites cuando p =1
Colas Multiservidor:
A continuacin una generalizacin del modelo simple que se ha tratado para mltiples
servidores todos los cuales comparten una fila de espera .

Si un individuo llega y hay por lo menos un servidor disponible el individuo se expide


inmediatamente a ese servidor . se supone que todos los servidores son iguales . Si todos
los servidores estn ocupados se empieza a formar un fila de espera . Si se tienen N
servidores idnticos p es la utilizacin de cada servidor y se puede considerar Np como
la utilizacin de todo el sistema , esto se llama intensidad de trfico u . Por lo tanto la
utilizacin mxima terica N = 100% y la tasa de entrada mxima terica es :
max = N/Ts

Modelos de Simulacin
Ciertas dificultades de los modelos analticos se superan mediante simulacin discreta
de sucesos , lo cual admite modelar un amplio nmero de polticas. La desventaja de la
simulacin radica en que los resultados de una determinada ejecucin son aplicables
solo a un conjunto de procesos en particular de supuestos , pero se pueden obtener
revelaciones tiles.
FINK88 tiene los resultados de un estudio. La simulacin comprenda 50000 procesos
con una tasa de llegada de =0.8 y un tiempo de servicio medio de Ts =1. La utilizacin
del procesador es de p = Ts = 0.8. Slo se mide la utilizacin en un momento dado.
Para presentar los resultados, los procesos se agruparon en percentiles del tiempo de
servicio cada uno de los cuales tena 500 procesos. Los 500 procesos con menor tiempo
de servicio estaban en el primer percentil; sin cortar estos, los 500 procesos restantes
con menor tiempo de servicio estaban en el segundo percentil y as sucesivamente. Este
agrupamiento permiti contemplar los efectos sobre los procesos de varias polticas en
funcin de la longitud de los procesos.
A continuacin se muestra el tiempo de retorno normalizado

y el siguiente grfico muestra el tiempo medio de espera.

Observando el tiempo de retorno se puede comprobar que el rendimiento del FCFS es


muy desfavorable, con una tercera parte de los procesos que tienen un tiempo de
retorno normalizado 10 veces superior al tiempo de servicio y estos procesos son los
ms cortos. El tiempo absoluto de espera es uniforme , como se esperaba puesto que la
planificacin es independiente del tiempo de servicio. En los grficos se muestran un
turno rotatorio con un cuanto de 1 unidad de tiempo. Excepto para los procesos ms
cortos, que se ejecutan en menos de un cuanto , el turno rotatorio (RR) produce un
tiempo de retorno normalizado en torno a 5 para todos los procesos tratando a todos por
igual. El algoritmo de primero el proceso ms corto (SPN) obtiene mejor rendimiento
que el turno rotatorio excepto para los procesos ms cortos . El del menor tiempo
restante(STR que es la versin preferente del SPN, da un mejor rendimiento que el SPN
excepto para el 7% de los procesos (los ms largos). Con las polticas no preferentes
FCFS favorece a los procesos largos y SPN a los cortos . La poltica de primero la
mayor tasa de respuesta (HRRN) intenta establecer un equilibrio entre estos dos
efectos , y esto queda confirmado en los grficos. Por ltimo el grfico muestra la
planificacin con realimentacin con un cuanto uniforme y fijo para cada cola. Como
se esperaba , la realimentacin ( FB) funciona bastante bien para los procesos ms
cortos.

OTROS ALGORITMOS DE PLANIFICACION


1) PLANIFICACION DE UN TORNEO.- Es uno de los algoritmos ms antiguos,
simples, imparciales y ms ampliamente utilizados. En el que a cada proceso se le
asigna un intervalo de tiempo, llamado su cantidad, en el cual se le permite su
ejecucin. Todo lo que el planificador necesita es hacer conservar una lista de procesos
ejecutables.
GRAFICAMENTE:
1) Proceso activo
B

Siguiente proceso
A

Proceso activo
A

2) PLANIFICACION POR PRIORIDAD.- Consiste en asignar a cada proceso una


prioridad y se le permite la ejecucin del proceso ejecutable que tenga la prioridad ms
alta.
3) PLANIFICACION CONDUCIDA POR POLITICA.- Permite que el sitema lleve el
control de la cantidad de tiempo de la CPU que un usuario a tenido para todos sus
procesos desde que ingreso a su sistema y el tiempo que cada usuario ha estado dentro
del sistema.
2.17.- PROCESOS EN UNIX
Un proceso UNIX tiene dos reas de memoria: ejecucin y control
El rea de ejecucin es el programa (texto) ms las zonas de memoria reservadas
para la pila y los datos. Est en la zona de memoria virtual asignada al proceso.
El rea de control contiene los bloques de control que conserva la informacin
acerca del proceso. Esta zona pertenece al ncleo del SO.
El rea de control tiene informacin que debe residir en memoria continuamente
e informacin que puede ser enviada a disco con el rea de ejecucin cuando el
planificador de procesos decida.

2.18.- CONCLUSIONES:
Comunicar procesos entre s mediante primitivas de comunicacin (que se utilizan
para garantizar que dos procesos no se encuentren jams al mismo tiempo dentro de sus
regiones crticas ).
Calcular las prioridades de los procesos y organizarlos en niveles de prioridad en
funcin de dichos valores.

Seleccionar el proceso que tenga mxima prioridad y asignar tiempo de CPU.


Si el proceso termina su cuenta de ejecucin (no hay bloqueo), el proceso pasa a la cola
de su nivel de prioridad.
Si el proceso se bloquea durante su cuenta, el planificador selecciona inmediatamente
otro proceso y le asigna tiempo de CPU.
Si un proceso retorna de una llamada al sistema y hay un proceso listo con mayor
prioridad, el proceso de menor prioridad es desalojado de la CPU.

Вам также может понравиться