Diferencia entre revisiones de «Índices de evaluación»

De Wiki de Sistemas Operativos
Saltar a: navegación, buscar
(¿Cómo se evalúa un criterio de planificación?)
(¿Cómo se evalúa un criterio de planificación?)
 
(No se muestran 21 ediciones intermedias de 6 usuarios)
Línea 1: Línea 1:
 
= ¿Cómo se evalúa un criterio de planificación? =
 
= ¿Cómo se evalúa un criterio de planificación? =
  
En base a los siguientes parámetros:
+
Los siguientes índices que nos permiten evaluar el planificador:
  
* '''Throughput''' (tasa de transferencia, en castellano), indica la cantidad de procesos en estado activo por unidad de tiempo. Un throughput alto es un indicador de un buen planificador (se mide en nºprocesos/segundo).
+
* '''Instante de lanzamiento''' (H<sub>0</sub>): Instante de lanzamiento del proceso.
* '''Latencia''', indica el tiempo que tarda un planificador de procesos en seleccionar qué proceso pasa a estado activo. Si el planificador toma mucho tiempo en decidir qué proceso pasa a estado activo, se dice que la latencia será alta (se mide en segundos).
+
* '''Instante de finalización''' (H<sub>f</sub>): Instante de finalización del proceso.
 +
* '''Tiempo de ejecución''' (t<sub>ejecución</sub>): Unidades de tiempo que requiere el proceso para finalizar su ejecución.
 +
* '''Tiempo de terminación''' (T = H<sub>f</sub> - H<sub>0</sub>): Diferencia entre el instante de lanzamiento y el instante de terminación del proceso.
 +
* '''Tiempo perdido''' (T-t): Es el tiempo durante el cual un proceso no está asignado al procesador, es decir, el tiempo en el que un proceso está en estado preparado o bloqueado.
 +
* '''Índice de penalización''' (I<sub>p</sub> = T / t): Indica que un proceso ha tardado x-1 veces más en ejecutarse que si hubiera tenido el procesador en exclusividad y sin que se hubiese producido ningún bloqueo. Nótese que el índice de penalización crece rápidamente para procesos cuyo tiempo de ejecución es pequeño, mientras que, para procesos con tiempo de ejecución mayores, lo hace de manera más suave.
  
Un buen planificador ofrecerá un throughput alto y una latencia baja.
+
Otros tiempos a tener en cuenta:
  
Además, existen otros índices que nos permiten evaluar el planificador:
+
* '''Tiempo de inactividad''': Es un tiempo específico del procesador. Tiempo durante el cual el procesador está ocioso (''idle'', en inglés), es decir, que no tienen ningún proceso asignado. Un procesador está ocioso cuando no hay procesos en estado preparado.
 +
* '''Tiempo del sistema''': Tiempo empleado por el [[planificador de procesos|planificador]] para la conmutación de procesos. Un buen planificador debe tomar muy poco tiempo en tomar la decisión de planificación y realizar la conmutación.
 +
* '''Tiempo de espera''': Tiempo desde el instante de lanzamiento hasta que el proceso pasa a estado preparado.
  
* '''Tiempo de ejecución''' (t<sub>ejecución</sub>): Unidades de tiempo que requiere el proceso para finalizar su ejecución.
+
Suponga el siguiente ejemplo, en el que hay dos procesos P<sub>x</sub> y P<sub>y</sub>, para ilustrar los índices definidos:
* '''Tiempo de terminación''' (T<sub>terminación</sub>): Diferencia entre el instante de lanzamiento y el instante de terminación.
 
* '''Tiempo perdido''': T-t . Es el tiempo durante el cual un proceso no está asignado al procesador.
 
* '''Tiempo de inactividad''': Tiempo durante el cual el procesador está ocioso (''idle'', en inglés), es decir, que no tienen ningún proceso asignado.
 
* '''Tiempo del sistema''': Tiempo empleado por el [[planificador de procesos|planificador]] para la conmutación de procesos.
 
* '''Tiempo de espera''': Tiempo desde el instante de lanzamiento hasta que el proceso pasa a estado preparado (se suele despreciar).
 
* '''Índice de penalización''': <math>\frac{T}{t} = \frac{H_f-H_0}{t} = x</math>. Indica que un proceso ha tardado x-1 veces más en ejecutarse que si hubiera tenido el procesador en exclusividad y sin que se hubiese producido ningún bloqueo. Nótese que el índice de penalización crece rápidamente para procesos cuyo tiempo de ejecución es pequeño, mientras que para procesos con tiempo de ejecución mayores, lo hace de manera más suave.
 
 
 
Suponga el siguiente ejemplo, en el que hay dos procesos <math>P_x</math> y <math>P_y</math>, para ilustrar los índices definidos:
 
  
 
   <    indica que el proceso está preparado
 
   <    indica que el proceso está preparado
Línea 30: Línea 28:
 
  planificador  |  |  X  X  |  |  |
 
  planificador  |  |  X  X  |  |  |
 
                 |___|___|___|___|___|___|___
 
                 |___|___|___|___|___|___|___
                  0  1  2  3  4  5  6
+
                0  1  2  3  4  5  6
 
   
 
   
 
                                       tiempo ->
 
                                       tiempo ->
Línea 39: Línea 37:
 
* T  = 4 : unidades de tiempo desde que se lanza hasta que se finaliza el proceso Px
 
* T  = 4 : unidades de tiempo desde que se lanza hasta que se finaliza el proceso Px
 
* T-t = 1 : unidades de tiempo durante la cual el proceso Px no está asignado al procesador, por tanto, no progresa en su actividad.
 
* T-t = 1 : unidades de tiempo durante la cual el proceso Px no está asignado al procesador, por tanto, no progresa en su actividad.
* = 4/3 = 1.34 : el proceso Px ha tardado un 34% de tiempo más en ejecutarse que si lo hubiera tenido en exclusividad (al tener que haber que compartido el procesador con Py).
+
* I<sub>p</sub> = 4/3 = 1.34 : el proceso Px ha tardado un 34% de tiempo más en ejecutarse que si lo hubiera tenido en exclusividad (al haber tenido que compartir el procesador con Py).
  
 
En el ejemplo anterior, los tiempos de espera y del sistema se suponen despreciables (en la práctica no lo son, aunque son muy pequeños con respecto a los ilustrados).
 
En el ejemplo anterior, los tiempos de espera y del sistema se suponen despreciables (en la práctica no lo son, aunque son muy pequeños con respecto a los ilustrados).
 +
 +
 +
4.3. [[Criterios_de_planificación | Criterios de planificación]]

Revisión actual del 17:12 2 abr 2020

¿Cómo se evalúa un criterio de planificación?

Los siguientes índices que nos permiten evaluar el planificador:

  • Instante de lanzamiento (H0): Instante de lanzamiento del proceso.
  • Instante de finalización (Hf): Instante de finalización del proceso.
  • Tiempo de ejecución (tejecución): Unidades de tiempo que requiere el proceso para finalizar su ejecución.
  • Tiempo de terminación (T = Hf - H0): Diferencia entre el instante de lanzamiento y el instante de terminación del proceso.
  • Tiempo perdido (T-t): Es el tiempo durante el cual un proceso no está asignado al procesador, es decir, el tiempo en el que un proceso está en estado preparado o bloqueado.
  • Índice de penalización (Ip = T / t): Indica que un proceso ha tardado x-1 veces más en ejecutarse que si hubiera tenido el procesador en exclusividad y sin que se hubiese producido ningún bloqueo. Nótese que el índice de penalización crece rápidamente para procesos cuyo tiempo de ejecución es pequeño, mientras que, para procesos con tiempo de ejecución mayores, lo hace de manera más suave.

Otros tiempos a tener en cuenta:

  • Tiempo de inactividad: Es un tiempo específico del procesador. Tiempo durante el cual el procesador está ocioso (idle, en inglés), es decir, que no tienen ningún proceso asignado. Un procesador está ocioso cuando no hay procesos en estado preparado.
  • Tiempo del sistema: Tiempo empleado por el planificador para la conmutación de procesos. Un buen planificador debe tomar muy poco tiempo en tomar la decisión de planificación y realizar la conmutación.
  • Tiempo de espera: Tiempo desde el instante de lanzamiento hasta que el proceso pasa a estado preparado.

Suponga el siguiente ejemplo, en el que hay dos procesos Px y Py, para ilustrar los índices definidos:

 <     indica que el proceso está preparado
 >     indica que el proceso ha finalizado su ejecución 
 $     indica que al proceso se le ha retirado el procesador
 X     indica la ejecución del planificador para la conmutación

               |   |   |   |   |   |   |
Px             <---|---$   |--->   |   |
Py             |   |   <--->   |   |   |
planificador   |   |   X   X   |   |   |
               |___|___|___|___|___|___|___
               0   1   2   3   4   5   6

                                     tiempo ->

Para el proceso Px:

  • t = 3 : Indica que el proceso Px requiere 3 unidades de tiempo para ejecutarse.
  • T = 4 : unidades de tiempo desde que se lanza hasta que se finaliza el proceso Px
  • T-t = 1 : unidades de tiempo durante la cual el proceso Px no está asignado al procesador, por tanto, no progresa en su actividad.
  • Ip = 4/3 = 1.34 : el proceso Px ha tardado un 34% de tiempo más en ejecutarse que si lo hubiera tenido en exclusividad (al haber tenido que compartir el procesador con Py).

En el ejemplo anterior, los tiempos de espera y del sistema se suponen despreciables (en la práctica no lo son, aunque son muy pequeños con respecto a los ilustrados).


4.3. Criterios de planificación