Documentos de Académico
Documentos de Profesional
Documentos de Cultura
Expo - Algoritmos de Planificación
Expo - Algoritmos de Planificación
ALGORITMOS DE PLANIFICACIN
1290-07-13831
Introduccin
Aqu vamos a centrarnos en analizar los distintos tipos de algoritmos de
planificacin. Estos algoritmos surgen debido a la necesidad de poder organizar
los procesos de una manera eficiente para el procesador.
Los algoritmos de planificacin se encargan de asegurar que un proceso no
monopoliza el procesador. Un proceso es un programa que est en ejecucin.
Este proceso puede estar en 3 estados distintos Listo Bloqueado y En
Ejecucin. Los procesos son almacenados en una lista junto con la informacin
que indica en qu estado est el proceso, el tiempo que ha usado el CPU, etc.
Algoritmos de planificacin
Planificacin de Plazo Fijo
Cuando se tiene que elegir a qu proceso asignar la CPU se escoge al que llevara
ms tiempo listo. El proceso se mantiene en la CPU hasta que se bloquea
voluntariamente.
El esquema FIFO rara vez se usa como esquema principal en los sistemas
actuales, pero a menudo esta incorporado en otros sistemas. Por ejemplo, muchos
esquemas de planificacion 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 apropiacion, 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 politica muy simple y sencilla de llevar a la practica, pero muy
pobre en cuanto a su comportamiento.
Las caractersticas principales de este algoritmo son las siguientes:
No es apropiativa.
Es justa, aunque los procesos largos hacen esperar mucho a los cortos.
EJEMPLO
Proceso Tiempo de
CPU
P1
P2
P3
24
3
3
Al igual que en el algoritmo FIFO las rfagas se ejecutan sin interrupcin, por
tanto, slo es til para entornos batch. Su caracterstica es que cuando se activa el
planificador, ste elige la rfaga de menor duracin. Es decir, introduce una nocin
de prioridad entre rfagas. Hay que recordar que en los entornos batch se pueden
hacer estimaciones del tiempo de ejecucin de los procesos.
La ventaja que presenta este algoritmo sobre el algoritmo FIFO es que minimiza
el tiempo de finalizacin promedio, como puede verse en el siguiente ejemplo:
Ejemplo: Supongamos que en un momento dado existen tres rfagas listos R1, R2
y R3, sus tiempos de ejecucin respectivos son 24, 3 y 3 ms. El proceso al que
pertenece la rfaga R1 es la que lleva ms tiempo ejecutable, seguido del proceso
al que pertenece R2 y del de R3. Veamos el tiempo medio de finalizacin (F) de
las rfagas aplicando FIFO y SJF:
FIFO F = (24 + 27 + 30) / 3 = 27 ms.
SJF F = (3 + 6 + 30) / 3 = 13 ms.
Se puede demostrar que este algoritmo es el ptimo. Para ello, consideremos el
caso de cuatro rfagas, con tiempos de ejecucin de a, b, c y d. La primera rfaga
termina en el tiempo a, la segunda termina en el tiempo a+b, etc. El tiempo
promedio de finalizacin es (4a+3b+2c+d)/4. Es evidente que a contribuye ms al
promedio que los dems tiempos, por lo que debe ser la rfaga ms corta, b la
siguiente, y as sucesivamente. El mismo razonamiento se aplica a un nmero
arbitrario de rfagas.
No obstante, este algoritmo slo es ptimo cuando se tienen simultneamente
todas las rfagas. Como contraejemplo, considrense cinco rfagas desde A hasta
E, con tiempo se ejecucin de 2, 4, 1, 1 y 1 respectivamente. Sus tiempos de
llegada son 0, 0, 3, 3 y 3. Primero se dispone de A y B, puesto que las dems
rfagas no han llegado an. Con el algoritmo SJF las ejecutaramos en orden A, B,
C, D, y E con un tiempo de finalizacin promedio de 4.6. Sin embargo, al
ejecutarlas en orden B, C, D, E y A se tiene un promedio de finalizacin de 4.4.
CONCLUSIONES
BIBLIOGRAFIA
http://lsi.vc.ehu.es/pablogn/docencia/manuales/SO/TemasSOuJaen/PLANIFICACI
ONDEPROCESOS/6AlgoritmosdePlanificacionI.htm
http://lsi.vc.ehu.es/pablogn/docencia/manuales/SO/TemasSOuJaen/PLANIFICACI
ONDEPROCESOS/6AlgoritmosdePlanificacionII.htm#planificacion_colas_Retro_M
ultiple