Sunteți pe pagina 1din 10

Algoritmos de Planificacion FCFS, SJF, SRTF,

Round Robind
Emilio Sedano Gijon PSP Actividad.

Programacin de Servicios y Procesos


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.

Ahora vamos a ver los diferentes algoritmos de Planificacin que estamos estudiando:
FCFS Firts-Come, First-Served

En esta poltica de planificacin, el procesador ejecuta cada proceso hasta que


termina, por tanto, los procesos que en cola de procesos preparados permanecern
encolados en el orden en que lleguen hasta que les toque su ejecucin. Este mtodo se
conoce tambin como FIFO (fist input, first output, Primero en llegar primero en salir).

Se trata de una poltica muy simple y sencilla de llevar a la prctica, pero muy pobre
en cuanto a su comportamiento.

La cantidad de tiempo de espera de cada proceso depende del nmero de procesos


que se encuentren en la cola en el momento de su peticin de ejecucin y del tiempo que
cada uno de ellos tenga en uso al procesador, y es independiente de las necesidades del
propio proceso.
Sus caractersticas son:

NO APROPIATIVA.

Es justa, aunque los procesos largos hacen esperar mucho a los cortos.

PREDECIBLE.

El tiempo medio de servicio es muy variable en funcin del nmero de procesos y su


duracin.

Ejemplo :

Proceso A Tiempo ejecucin Tiempo llegada Tiempo finaliza Tiempo retorno

Tiempo espera .
En el caso de que los procesos de mayor tiempo de duracin llegasen los primeros, el
tiempo medio de espera sera mucho mayor. Podemos llegar a la conclusin de que este no
es un algoritmo eficiente.
Conclusin:
Este algoritmo esta bien lo nico que que los procesos largos hacen esperar mucho a
los cortos.
Predecible.
El tiempo medio de servicio es muy variable en funcin del nmero de procesos y su
duracin.

Bibliografa:
http://pachel.tripod.com/materias/material3sis.htm

SJF Shortest Job First


En este algoritmo , da bastante prioridad a los procesos ms cortos a la hora de
ejecucin y los coloca en la cola.
Ejemplo:
Una cola de personas en Mercadona delante de la caja , la persona que menos
compra lleva esa pasa primero.

Conclusin
En resumen, este algoritmo selecciona al proceso con el prximo tiempo ejecucin ms
corto. El proceso corto saltar a la cabeza de la cola. Ejecucin de un proceso consiste en ciclos de
ejecucin de CP y ciclos de espera por E/S. El algoritmo selecciona aquel proceso cuyo prximo ciclo
de ejecucin de CP sea menor. El problema est en conocer dichos valores, pero podemos predecirlos
usando la informacin de los ciclos anteriores ejecutados.
Bibliografa
http://es.scribd.com/doc/44358964/FSO-Algoritmos-de-Planificacion-Algoritmo-SJF-Shortest-
Job-First
SRTF Short Remaining Time First

Es similar al SJF, con la diferencia de que si un nuevo proceso pasa a listo se activa
el dispatcher para ver si es ms corto que lo que queda por ejecutar del proceso en
ejecucin. Si es as, el proceso en ejecucin pasa a listo y su tiempo de estimacin se
decremento con el tiempo que ha estado ejecutndose.
Los procesos llegan a la cola y solicitan un intervalo de CPU.Si dicho intervalo es
inferior al que le falta al proceso en ejecucin para abandonar la CPU, el nuevo proceso
pasa a la CPU y el que se ejecutaba a la cola de preparados.

Conclusin:
El intervalo de CPU es difcil de predecir.
Posibilidad de inanicin: los trabajos largos no se ejecutarn mientras hayan trabajos cortos.
Bibliografa:
http://algoritmosplanificacion.blogspot.com.es/2012/08/srtf-short-remaining-time-first.html

Round Robin
Es un mtodo para seleccionar todos los elementos en un grupo de manera equitativa
y en un orden racional, normalmente comenzando por el primer elemento de la lista hasta
llegar al ltimo y empezando de nuevo desde el primer elemento.
Round Robin es uno de los algoritmos de planificacin de procesos ms complejos y
difciles, dentro de un sistema operativo asigna a cada proceso una porcin de tiempo
equitativa y ordenada, tratando a todos los procesos con la misma prioridad.
Se define un intervalo de tiempo denominado cuanto, cuya duracin vara segn el
sistema. La cola de procesos se estructura como una cola circular. El planificado la recorre
asignando un cuanto de tiempo a cada proceso. La organizacin de la cola es FIFO.
Conclusin:
Cada proceso tiene asignado un intervalo de tiempo de ejecucin, llamado cuantum o
cuanto. Si el proceso agota su cuantum de tiempo, se elige a otro proceso para ocupar la
CPU. Si el proceso se bloquea o termina antes de agotar su cuantum tambin se alterna el
uso de la CPU. El round robn es muy fcil de implementar. Todo lo que necesita el
planificado es mantener una lista de los procesos listos.
Bibliografa:
http://es.wikipedia.org/wiki/Planificaci%C3%B3n_Round-robin
Conclusin personal
En mi opinin el algoritmo de Round Robbin es el mas fiable ya que cada proceso se le
asigna un tiempo de ejecucin si se agota elige otro proceso .
Tambien el algotrismo SJF esta bien ya que prioriza segn las necesidades de la CPU.

UNIDAD 3. PLANIFICACIN DEL PROCESADOR


INTRODUCCIN

El objetivo de la planificacin del procesador es dar un buen servicio a todos los procesos
que existan en un momento dado en el sistema.
NIVELES DE PLANIFICACIN:
Planificacin a largo plazo (planificador de trabajos).

Decide cul ser el prximo trabajo que se va a ejecutar. Este nivel slo existe en los
sistemas de procesamiento por lotes, donde la decisin se basa en las necesidades de
recursos y su disponibilidad. En los sistemas de tiempo compartido tiene como nica
misin cargar los programas que se desean ejecutar en memoria. Este nivel es el encargado
de crear los procesos.
Planificacin a medio plazo (planificador de swapping).
Decide si un proceso que est en ejecucin en estado bloqueado o suspendido debe
ser extrado de la memoria temporalmente. Posteriormente, cuando el sistema se encuentre
ms descargado, devolver dicho proceso a la memoria y al estado de ejecucin. Slo
existe en sistemas de tiempo compartido y en aquellos que tienen gestin de memoria
virtual. Este nivel gestiona los procesos suspendidos en espera de algn recurso no
disponible en el momento de la suspensin.
Planificacin a corto plazo (planificacin del procesador).
Es el encargado de decidir cmo y cundo tendr acceso al procesador un proceso
que est preparado para utilizarlo. Lleva a cabo las funciones de multiprogramacin,
estando siempre residente en memoria y ejecutndose con mucha frecuencia; por ello debe
ser de ejecucin muy rpida. En este nivel es donde se debe dar un buen servicio a los
procesos interactivos para que el usuario no perciba, o lo haga en pequeo grado, que est
compitiendo por el procesador junto con otros usuarios.
Objetivos

Justicia.
Debe ser lo ms justa posible con todo tipo de procesos, sin favorecer a
unos y perjudicar a otros.

Mxima capacidad de ejecucin.


Debe dar un servicio aceptable para que todos los trabajos se realicen lo ms
rpidamente posible. Esto se logra disminuyendo el nmero de cambios de proceso.

Mximo nmero de usuarios interactivos.


En los sistemas de tiempo compartido se tratar de que puedan estar trabajando el
mayor nmero de usuarios simultneamente.

Predicibilidad.
Debe concebirse de tal forma que en todo momento pueda saberse cmo ser su
ejecucin.
Minimizacin de la sobrecarga.
La computadora debe tener poca sobrecarga ya que sta incide directamente sobre el
rendimiento final del sistema: a menor sobrecarga, mayor velocidad de proceso. Los
cambios de contexto deben minimizarse.

Equilibrio en el uso de recursos. Para obtener un buen rendimiento en el uso de


recursos y que stos estn ocupados equitativamente el mayor tiempo posible.

Seguridad de las prioridades. Si un proceso tiene mayor prioridad que otro, ste
debe ejecutarse ms rpidamente.
CRITERIOS
Utilizacin del procesador. Mantenerlo ocupado el mayor tiempo posible.
Productividad. El nmero de los procesos que terminan por unidad de tiempo. Es una
medida de trabajo que depende de la duracin de los procesos.
Tiempo de retorno. El tiempo para un proceso entre la entrada y la salida del sistema. Es la
suma de los tiempos de espera, ejecucin, etc.
Tiempo de espera. El tiempo que un proceso pasa en la cola de procesos listos (no en
espera de E/S).
Tiempo de respuesta. El tiempo entre la presentacin del proceso al sistema y su primera
respuesta.
Tiempo de servicio. Tiempo en que tarda en ejecutarse un proceso, donde se incluye el
tiempo de carga del programa en memoria, el tiempo de espera en la cola de procesos
preparados, el tiempo de ejecucin en el procesador y el tiempo de E/S.

Algoritmos
Las polticas de planificacin se agrupan en:
Apropiativas. Son las que producen un cambio de proceso con cada cambio de contexto, es
decir, el proceso que est haciendo uso del procesador puede ser temporalmente suspendido
y permitir que otro proceso se apropie del procesador. Se utilizan en sistemas operativos
con tiempo compartido y tiempo real.
No apropiativas. Son aquellas en las que un proceso no abandona nunca el procesador
desde su comienzo hasta su fin. Se utilizan en sistemas de proceso por lotes.
FCFS (Firts come, first served, Primero en llegar primero en ser servido)
En esta poltica de planificacin, el procesador ejecuta cada proceso hasta que termina,
por tanto, los procesos que en cola de procesos preparados permanecern encolados en el
orden en que lleguen hasta que les toque su ejecucin. Este mtodo se conoce tambin
como FIFO (fist input, first output, Primero en llegar primero en salir).
Se trata de una poltica muy simple y sencilla de llevar a la prctica, pero muy pobre en
cuanto a su comportamiento.
La cantidad de tiempo de espera de cada proceso depende del nmero de procesos que se
encuentren en la cola en el momento de su peticin de ejecucin y del tiempo que cada uno
de ellos tenga en uso al procesador, y es independiente de las necesidades del propio
proceso.
Sus caractersticas son:
- No apropiativa.
- Es justa, aunque los procesos largos hacen esperar mucho a los cortos.
- Predecible.
- El tiempo medio de servicio es muy variable en funcin del nmero de procesos y su
duracin.
ROUND ROBIN (RR)
Esta poltica, cuya traduccin podra ser asignacin cclica o planificacin en rueda, es
una mejora de la FCFS. Trata de ser ms justa en cuanto a la respuesta tanto de los procesos
cortos como de los largos.
Consiste en conceder a cada proceso en ejecucin un determinado perodo de tiempo q
(quantum), transcurrido el cual, si el proceso no ha terminado, se le devuelve al final de la
cola de procesos preparados concedindose el procesador al siguiente proceso por su
correspondiente quantum.
Esta interrupcin peridica contina hasta que el proceso termine su ejecucin,
formando una rueda de procesos que sern ejecutados cclicamente hasta que terminen.
Variando el parmetro q se logra tener diferentes comportamientos. Si q es mayor que el
tiempo que necesita para su ejecucin el proceso ms largo, se convertir en FCFS. Si q se
aproxima a 0, la sobrecarga del sistema ser muy grande puesto que la mayor parte del
tiempo se consumira en cambios de contexto.
Los valores de q varan entre 10 y 100 milisegundos, siendo recomendable que el 80%
de los tiempos de respuesta de los procesos sean inferiores al quantum.
Sus caractersticas son:
- Baja sobrecarga si el cambio de contexto es eficiente y los procesos siempre estn en la
memoria principal.
- 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.
Es la poltica ms utilizada para tiempo compartido.
Ofrece un ndice de servicio uniforme para todos los procesos.
Es una poltica apropiativa.
SJN (Shortest Job Next, siguiente proceso: el ms corto)
Es una poltica de planificacin no apropiativa que trata de cubrir los mismos objetivos
que la RR.
Toma de la cola de procesos preparados el que necesite menos tiempo de ejecucin para
realizar su trabajo. Para ello debe saber el tiempo de procesador que necesitan cada
proceso. Esto es posible a travs de diversos mtodos como pueden ser la informacin
suministrada por el propio usuario, por el propio programa, basndose en la historia
anterior (heurstica), etc.
El tiempo de servicio en esta poltica es bueno para los procesos cortos, saliendo
perjudicados los procesos largos.
Sus caractersticas son:
- No apropiativa.
- El tiempo de espera aumenta de acuerdo con la longitud de los procesos, pero el tiempo
medio de espera con respecto a otras polticas es ptimo.
- Es poco predecible.
- No es justa con los procesos largos.
- Buen tiempo de servicio.
- Resulta difcil de poner en prctica por los datos que necesita para realizarse la
planificacin.
SRT (Shortest Remaining Time, el de tiempo restante ms corto)
Es una mezcla de los dos mtodos anteriores y trata de obtener las ventajas de ambos.
Para ello, esta tcnica cambia el proceso que est en ejecucin cuando se ejecuta un
proceso (paso del planificador de largo plazo al de corto plazo), con una exigencia de
tiempo de ejecucin total menor que el que se est ejecutando en el procesador. El valor del
tiempo de respuesta medio de los procesos largos mejora con respecto a SJN.
Presenta un excelente ndice de servicio y el tiempo de espera es bastante corto para la
mayora de los procesos. Consigue una buena eficiencia, ya que logra que la lista de
procesos preparados sea lo ms corta posible.
Sus caractersticas son:
- Es una variante de SJN para hacerla apropiativa.
- Puede ser injusta, ya que un proceso corto puede echar a uno largo que est haciendo uso
del procesador y que adems est terminando.
- Presenta una mayor sobrecarga.
- Excelente tiempo medio de servicio.
- Es muy eficiente.
Prioridad
En esta poltica se asocia a cada proceso una prioridad, de manera que el procesador se
asigna al proceso de mayor prioridad.
Las prioridades pueden ser definidas interna o externamente. En el primer caso, el
sistema operativo se basa en una serie de informaciones medibles para el clculo y
asignacin de dichas prioridades (tiempo necesitado de procesador, necesidad de memoria,
etc.).
Su principal problema es el bloqueo o postergacin indefinida, ya que un proceso de baja
prioridad puede estar esperando su turno indefinidamente. Para evitarlo se suele emplear lo
que se denomina envejecimiento de las prioridades, que aumenta gradualmente las
prioridades de los procesos que estn en espera de utilizar el procesador.
Cualquier algoritmo basado en esta poltica puede ser apropiativo o no apropiativo. En el
primer caso, un proceso puede ser retirado del procesador si aparece otro de mayor
prioridad en la cola de procesos preparados.
HRN (High Response Next, el prximo de ms alto ndice de respuesta)
Es una poltica que trata de corregir las posibles injusticias de la poltica SJN con los
procesos largos y las de la poltica FCFS con los procesos cortos.
Se basa en hacer variable la prioridad de un proceso, calculndose constantemente por
medio de la expresin:
P = (w + t) / t
Donde
P es la prioridad del proceso.
w es el tiempo de espera en la cola de procesos preparados.
t es el tiempo de ejecucin del proceso.
En un principio P valdr 1 e ir aumentando paulatinamente a medida que el proceso
permanezca en la cola de procesos preparados (w favorece a los procesos largos), e ir
disminuyendo cuanto ms tiempo est en ejecucin (t favorece a los procesos cortos).
Cuando un proceso que est en ejecucin abandona el procesador, el proceso preparado
que tenga mayor prioridad (que ms haya esperado en la cola), ser el que se seleccione
para su ejecucin.
Sus inconvenientes son:
- Si un usuario ejecuta un proceso corto inmediatamente despus de que un proceso largo
haya comenzado a utilizar el procesador, deber sufrir una larga espera.
- Es muy costosa de llevara a la prctica, ya que la prioridad debe calcularse para todos los
procesos en espera, cada vez que termine el proceso que est haciendo uso del procesador.
- Sobrecarga mucho el sistema debido a los clculos que debe realizar.
Sus caractersticas son:
- No apropiativa.
- Es justa.
- Es costosa de poner en prctica.
- Produce una gran sobrecarga en el sistema.
COLAS MLTIPLES

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