Concepto:

Disciplina no apropiativa y no
recomendable en ámbitos de
tiempo compartido, el proceso
espera con el menor tiempo de
ejecución hasta su terminando
permitiendo que el siguiente se
ejecute.
• Los tiempos de espera son menos predecibles que en
  “FIFO”.

• Favorece a los procesos cortos en detrimento de los
  largos.

• Tiende a reducir el número de procesos en espera y el
  número de procesos que esperan detrás de procesos
  largos.

• Requiere un conocimiento preciso del tiempo de
  ejecución de un proceso, lo que generalmente se
  desconoce.

• Se pueden estimar los tiempos en base a series de
  valores anteriores.
• Asocia a cada proceso tiempo aproximado
  de la utilización del CPU

• Asigna la CPU al proceso con menor tiempo
  asociado

• Cuando un proceso consigue la CPU, la
  conserva hasta que desea liberarla
Estimación del tiempo de
utilización del CPU por
parte de un proceso
Para      el     siguiente
ejemplo se tienen 4
procesos (P1, P2,P3 y
P4). A medida que estos
se van incorporando a la
cola de listos, se les
calcula su próximo ciclo
de CPU.
Para calcular el próximo
ciclo de CPU se pueden
emplear:         métodos
estadísticos,     cálculos
probabilísticos,     entre
otros.
En el ejemplo se toma como criterio que la cola de procesos
listos está inicialmente vacía. En la figura se representa la
llegada de P1 a la cola de listos con un tiempo de llegada
(0,0). Luego a P1 se le calcula su CCPU (CCPU = 7) y en
ese instante se comienza a ejecutar.
Estando en ejecución el proceso P1, se incorpora a la cola de listos
P2, al cual se le calcula su CCPU (CCPU = 4).Pero como el CCPU
de P2 es menor que el CCPU de P1, entonces P1 es desalojado y
P2 toma la CPU. En este caso P1 se reincorpora a la cola de listos
porque no ha terminado su ejecución, y en ese instante se le vuelve
a calcular el valor del CCPU (CCPU = 6).
Luego llega el proceso P3 a la cola de listos y se le calcula el CCPU
(CCPU = 1). Por lo que sucede igual que el caso anterior, el CCPU de
P3 es menor que el CCPU de P2, por lo que se desaloja P2 para
cederle la CPU a P3. P2 es reincorporado a la cola de listos porque no
ha terminado su ejecución CCPU y se le vuelve a calcular su CCPU
(CCPU = 3).
El proceso P4 se incorpora a la cola de listos y se le calcula su CCPU
(CCPU = 4). Luego P3 termina su ejecución para cederle la CPU al
próximo proceso que le corresponda según el criterio que establece el
algoritmo. Para el ejemplo le corresponde el turno a P2, luego a P4 y
finalmente a P1.
El SJF se considera como un
algoritmo óptimo, porque da el
mínimo tiempo de espera
promedio para un conjunto de
procesos,     así  como     las
estimaciones de CPU. Su
dificultad  radica   en    que
materialmente es un algoritmo
imposible de implementar .
Concepto:

Da prioridad al proceso que le
resta menor tiempo de CPU para
terminar, es una variante del SJF
pero con expulsión, optimiza la
media del tiempo de espera y
rendimiento.
Es la contraparte apropiativa del   Debe mantener un registro del
SJF.                                tiempo de servicio transcurrido del
                                    proceso en ejecución, lo que
Es útil en sistemas de tiempo       aumenta la sobrecarga. Los trabajos
compartido.                         largos tienen un promedio y una
                                    varianza de los tiempos de espera
El proceso con el tiempo estimado   aún mayor que en SJF.
de ejecución menor para finalizar
es el siguiente en ser ejecutado.   La apropiación de un proceso a
Un proceso en ejecución puede       punto de terminar por otro de menor
ser apropiado por un nuevo          duración recién llegado podría
proceso con un tiempo estimado      significar un mayor tiempo de
de ejecución menor.                 cambio de contexto (administración
                                    del procesador) que el tiempo de
Tiene mayor sobrecarga que la       finalización del primero.
planificación SJF.
• Los procesos llega a la cola y
  solicitan intervalo de CPU

• Si el intervalo es inferior al que falta
  al proceso en ejecución para
  abandonar la CPU,            el nuevo
  proceso pasa a la CPU y el que se
  ejecutaba a la cola de preparados.
• El intervalo   es   difícil   de
  predecir

• Posibilidad de inanición: los
  trabajos no se ejecutaran
  mientras hayan trabajos cortos
Si un nuevo proceso pasa a listo se activa el dispatcher para ver si
es más corto que lo que queda por ejecutar del proceso en
ejecución. Si es así el proceso en ejecución pasa a listo y su
tiempo de estimación se decrementa con el tiempo que ha estado
ejecutándose.

En la figura 6.5 tenemos un ejemplo de funcionamiento del
algoritmo en el que se observa cómo se penalizan las ráfagas
largas (como en SJF). Un punto débil de este algoritmo se
evidencia cuando una ráfaga muy corta suspende a otra un poco
más larga, siendo más largo la ejecución en este orden al ser
preciso un cambio adicional de proceso y la ejecución del código
del planificador.
Para que puedan observar el ejemplo por favor
ingresen a esta dirección

http://www.youtube.com/watch?v=-vxbZUi78yI
Sjf   srtf

Sjf srtf

  • 2.
    Concepto: Disciplina no apropiativay no recomendable en ámbitos de tiempo compartido, el proceso espera con el menor tiempo de ejecución hasta su terminando permitiendo que el siguiente se ejecute.
  • 3.
    • Los tiemposde espera son menos predecibles que en “FIFO”. • Favorece a los procesos cortos en detrimento de los largos. • Tiende a reducir el número de procesos en espera y el número de procesos que esperan detrás de procesos largos. • Requiere un conocimiento preciso del tiempo de ejecución de un proceso, lo que generalmente se desconoce. • Se pueden estimar los tiempos en base a series de valores anteriores.
  • 4.
    • Asocia acada proceso tiempo aproximado de la utilización del CPU • Asigna la CPU al proceso con menor tiempo asociado • Cuando un proceso consigue la CPU, la conserva hasta que desea liberarla
  • 5.
    Estimación del tiempode utilización del CPU por parte de un proceso
  • 6.
    Para el siguiente ejemplo se tienen 4 procesos (P1, P2,P3 y P4). A medida que estos se van incorporando a la cola de listos, se les calcula su próximo ciclo de CPU. Para calcular el próximo ciclo de CPU se pueden emplear: métodos estadísticos, cálculos probabilísticos, entre otros.
  • 7.
    En el ejemplose toma como criterio que la cola de procesos listos está inicialmente vacía. En la figura se representa la llegada de P1 a la cola de listos con un tiempo de llegada (0,0). Luego a P1 se le calcula su CCPU (CCPU = 7) y en ese instante se comienza a ejecutar.
  • 8.
    Estando en ejecuciónel proceso P1, se incorpora a la cola de listos P2, al cual se le calcula su CCPU (CCPU = 4).Pero como el CCPU de P2 es menor que el CCPU de P1, entonces P1 es desalojado y P2 toma la CPU. En este caso P1 se reincorpora a la cola de listos porque no ha terminado su ejecución, y en ese instante se le vuelve a calcular el valor del CCPU (CCPU = 6).
  • 9.
    Luego llega elproceso P3 a la cola de listos y se le calcula el CCPU (CCPU = 1). Por lo que sucede igual que el caso anterior, el CCPU de P3 es menor que el CCPU de P2, por lo que se desaloja P2 para cederle la CPU a P3. P2 es reincorporado a la cola de listos porque no ha terminado su ejecución CCPU y se le vuelve a calcular su CCPU (CCPU = 3).
  • 10.
    El proceso P4se incorpora a la cola de listos y se le calcula su CCPU (CCPU = 4). Luego P3 termina su ejecución para cederle la CPU al próximo proceso que le corresponda según el criterio que establece el algoritmo. Para el ejemplo le corresponde el turno a P2, luego a P4 y finalmente a P1.
  • 11.
    El SJF seconsidera como un algoritmo óptimo, porque da el mínimo tiempo de espera promedio para un conjunto de procesos, así como las estimaciones de CPU. Su dificultad radica en que materialmente es un algoritmo imposible de implementar .
  • 12.
    Concepto: Da prioridad alproceso que le resta menor tiempo de CPU para terminar, es una variante del SJF pero con expulsión, optimiza la media del tiempo de espera y rendimiento.
  • 13.
    Es la contraparteapropiativa del Debe mantener un registro del SJF. tiempo de servicio transcurrido del proceso en ejecución, lo que Es útil en sistemas de tiempo aumenta la sobrecarga. Los trabajos compartido. largos tienen un promedio y una varianza de los tiempos de espera El proceso con el tiempo estimado aún mayor que en SJF. de ejecución menor para finalizar es el siguiente en ser ejecutado. La apropiación de un proceso a Un proceso en ejecución puede punto de terminar por otro de menor ser apropiado por un nuevo duración recién llegado podría proceso con un tiempo estimado significar un mayor tiempo de de ejecución menor. cambio de contexto (administración del procesador) que el tiempo de Tiene mayor sobrecarga que la finalización del primero. planificación SJF.
  • 14.
    • Los procesosllega a la cola y solicitan intervalo de CPU • Si el intervalo es inferior al que falta al proceso en ejecución para abandonar la CPU, el nuevo proceso pasa a la CPU y el que se ejecutaba a la cola de preparados.
  • 15.
    • El intervalo es difícil de predecir • Posibilidad de inanición: los trabajos no se ejecutaran mientras hayan trabajos cortos
  • 17.
    Si un nuevoproceso pasa a listo se activa el dispatcher para ver si es más corto que lo que queda por ejecutar del proceso en ejecución. Si es así el proceso en ejecución pasa a listo y su tiempo de estimación se decrementa con el tiempo que ha estado ejecutándose. En la figura 6.5 tenemos un ejemplo de funcionamiento del algoritmo en el que se observa cómo se penalizan las ráfagas largas (como en SJF). Un punto débil de este algoritmo se evidencia cuando una ráfaga muy corta suspende a otra un poco más larga, siendo más largo la ejecución en este orden al ser preciso un cambio adicional de proceso y la ejecución del código del planificador.
  • 18.
    Para que puedanobservar el ejemplo por favor ingresen a esta dirección http://www.youtube.com/watch?v=-vxbZUi78yI