Você está na página 1de 6

UNIVERSIDAD NACIONAL DE LOJA

REA DE LA ENERGA, LAS INDUSTRIAS Y LOS RECURSOS NATURALES NO RENOVABLES

SISTEMAS OPERATIVOS
DOCENTE: ING. HERNN TORRES ALUMNO: EDGAR MANUEL MACAS TEMA: ALGORITMOS DE PLANIFICACIN MODULO: 7mo MDULO B FECHA: 2011-11-28

LOJA - ECUADOR

ALGORITMOS DE PLANIFICACIN
Antes de comenzar a describir los respectivos algoritmos de planificacin, es importante conocer dos conceptos relacionados. Uno de ellos es la funcin de seleccin que determina qu proceso, de entre los listos, se elige para ejecutar a continuacin. El otro es el modo de decisin o esquema de planificacin, que especifica los instantes de tiempo en que se aplica la funcin de seleccin. Hay dos categoras generales: 1. Nonpreemptive scheduling (apropiativo) Tambin conocido como cooperative multitasking. Una vez que el proceso pasa al estado de ejecucin, contina ejecutando hasta que termina, se bloquean en espera de una E/S o al solicitar algn servicio del sistema. Esta poltica de ejecucin para terminacin fue implementada en los primeros sistemas de lote (batch). 2. Preemptive scheduling (no apropiativo) Generalmente conocida como poltica de planificacin por torneo. El proceso que se est ejecutando actualmente puede ser interrumpido y pasado al estado de listos por el sistema operativo. La decisin de sustituirlos por otro proceso puede llevarse a cabo cuando llega un nuevo proceso, cuando se produce una interrupcin que lleva a un proceso bloqueado al estado listo o peridicamente, en funcin de una interrupcin del reloj.

1. Primero en llegar, primero en ser servido (FCFS First come first served)
La lista de procesos en estado listo esta ordenada segn el orden de llegada al sistema (creacin del proceso), siendo el ms antiguo el que est en la cabecera de dicha lista. Es una disciplina no apropiativa, por lo tanto al proceso que est activo no se le puede retirar la CPU hasta que l la abandone voluntariamente.

Inconvenientes:
bajos rendimientos, procesos largos hacen esperar a procesos cortos; no es til en sistemas interactivos puesto que no garantiza buenos tiempos de respuesta.

Ventajas:
permite predecir el orden de ejecucin de los procesos; es fcil de implementar. FCFS, ejemplo:

2. Planificacin por Prioridad al ms corto (SJF, Short Job First). Es una disciplina no apropiativa. La lista de procesos en estado listo esta ordenada por la cantidad de tiempo de ejecucin estimada, de forma que el proceso ms corto es el primero en la cola. Para establecer este orden se necesita saber el periodo de tiempo de ejecucin de un proceso, y como esto raramente est disponible, se confa en las estimaciones de los usuarios.

Inconvenientes:
con respecto al algoritmo FIFO, es menos predecible los tiempos de respuesta, sobre todo de los procesos largos; es poco til en sistemas interactivos puesto que no garantiza tiempos de respuesta razonables. con respecto al algoritmo FIFO, reduce al mnimo el tiempo promedio de espera de los trabajos, ya que al favorecer los trabajos cortos sobre los largos reduce el nmero de trabajos en espera.

Ventajas:

Ej.: 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.

3. Planificacin del tiempo restante ms corto (SRT).


Esta disciplina elige siempre al proceso que le queda menos tiempo de ejecucin estimado para completar su ejecucin; de esta forma aunque un proceso requiera mucho tiempo de ejecucin, a medida que se va ejecutando ira avanzando en la lista de procesos en estado listo hasta llegar a ser el primero. Para realizar esta eleccin, es necesario actualizar el PCB de los procesos a medida que se le asigna tiempo de servicio, lo que supone una mayor sobrecarga adicional. Es una disciplina apropiativa ya que a un proceso activo se le puede retirar la CPU si llega a la lista de procesos en estado listo otro con un tiempo restante de ejecucin estimado menor.

4. HRN (Prioridad a la tasa de respuesta ms alta)


Es una disciplina de planificacin no apropiativa en la cual la prioridad de cada proceso no slo se calcula en funcin del tiempo de servicio, sino tambin del tiempo que ha esperado para ser atendido. Cuando un trabajo obtiene el procesador, se ejecuta hasta terminar. Las prioridades dinmicas en HRN se calculan de acuerdo con la siguiente expresin: prioridad = (tiempo de espera + tiempo de servicio) / tiempo de servicio.

Como el tiempo de servicio aparece en el denominador, los procesos cortos tendrn preferencia. Pero como el tiempo de espera aparece en el numerador, los procesos largos que han esperado tambin tendrn un trato favorable. Obsrvese que la suma tiempo de espera + tiempo de servicio es el tiempo de respuesta del sistema para el proceso si ste se inicia de inmediato.

5. Planificacin por el Comportamiento


Con este tipo de planificacin se pretende garantizar al usuario cierta prestacin del sistema y tratar de cumplirla. Si en un sistema tenemos 'n' usuarios lo normal ser garantizar a cada uno de ellos al menos 1/n de la potencia del procesador. Para ello necesitamos del tiempo consumido por el procesador y el tiempo que lleva el proceso en el sistema. La cantidad de procesador que tiene derecho a consumir el proceso ser el cociente entre el tiempo que lleva en el sistema entre el nmero de procesos que hay en el sistema. A esa cantidad se le puede asociar una prioridad que vendr dada como el cociente entre tiempo de procesador que ha consumido y el tiempo que se le prometi (el tiempo que tiene derecho a consumir). De tal modo que si esa proporcin es de 0'5 significa que tan slo ha consumido la mitad del tiempo prometido pero si es de 2 quiere decir que ha consumido ms de lo debido, justamente el doble.

6. Planificacin por Turno Rotatorio (Round Robin).


La principal decisin de diseo que surge con Round Robin es el tamao del trozo o quantum. Si el quantum es muy corto, entonces los procesos se movern a travs del sistema rpidamente. Por otro lado, hay un cierto overhead o desperdicio de tiempo envuelto con el manejo de la interrupcin de reloj y las funciones de planificacin y despacho. Por lo tanto quanta muy pequeos deberan evitarse. Una alternativa es usar un quantum de tiempo que sea un poco ms grande que el tiempo promedio requerido para una interaccin tpica. Round Robin es particularmente efectivo para sistemas generales de tiempo compartido. Se implementa con una cola FIFO de procesos. Nuevos procesos son agregados al final de la cola, y toma el proceso que se encuentra en la cabeza de la cola El desempeo de este algoritmo depender del tamao del quantum. Si el quantum es infinito entonces degenera en FCFS. Si el quantum es muy pequeo entonces Round Robin es llamado comparticin de CPU y en teora pareciera que cada proceso tiene su propio procesador corriendo a 1/n la velocidad del procesador real.

7. 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 ms de un proceso entonces se deber seguir alguna poltica de seleccin. Un problema que presenta un esquema de planificacin por prioridades puro es que los procesos con la prioridad ms baja pueden sufrir de inanicin o bloqueo indefinido. Un proceso que est listo para correr pero espera porque siempre hay procesos con prioridad ms alta. Para evitar este problema, se puede ir incrementando gradualmente la prioridad de los procesos (envejecimiento). SJF es un caso especial de planificacin por Prioridad, donde la prioridad es el inverso del valor estimado del prximo ciclo de CPU (a menor ciclo, mayor prioridad).

8. Planificacin con colas de niveles mltiples.


A cada proceso se le asigna una prioridad. La lista de procesos en estado listo est formada por una serie de colas circulares, donde cada una de ellas contiene a todos aquellos procesos que tienen una misma prioridad. La CPU se asigna siempre al proceso de la cola de mayor prioridad que no est vaca. Problema: procesos de baja prioridad quedan postergados indefinidamente. Solucin: prioridad por envejecimiento. La prioridad aumenta gradualmente a medida que el proceso pasa cierto tiempo en el sistema, garantizando su terminacin en un tiempo finito.

9. Planificacin

con

colas

de

retroalimentacin

de

niveles

mltiples.
Su objetivo es tratar a los procesos de acuerdo a su comportamiento: si el proceso se suspende frecuentemente se le debe asignar bastantes veces el procesador con un quantum pequeo; si el proceso se suspende poco se le debe asignar el procesador menos veces pero con un quantum grande.

La lista de procesos en estado listo est formada por varios niveles y cada uno de ellos con una cola circular. Cuando se inserta un nuevo proceso este se aade al final de la cola de mayor nivel gestionada de forma FIFO.

BIBLIOGRAFIA
Algoritmos de Planificacin, http://wwwdi.ujaen.es/%7Elina/TemasSO/ALGORITMOSDEPLANIFICACION/6Algoritmosde PlanificacionI.htm, Fecha consulta [27/11/2011]. ngela Di Serio , Algoritmos de planificacin de la CPU, Http://ldc.usb.ve/%7Espd/Docencia/ci-3821/Tema4/node7.html, [27/11/2011].

Fecha

consulta

Malw Dark , Algoritmo de planificacin de proceso, http://apuntessis.blogspot.com/2007/12/algoritmos-de-planificacin-de-proceso.html, Fecha consulta [27/11/2011].

Você também pode gostar