Sol-ejer2-1-otros-aspectos

De Wiki de Sistemas Operativos
Revisión del 19:27 23 nov 2011 de Pneira (discusión | contribuciones) (revisión)
Saltar a: navegación, buscar

SJF Apropiativo con multiprocesamiento

Para este caso disponemos de 2 Procesadores, y supondremos que el planificador se ejecuta en uno de ellos

                    ____|_PA_|_PB_|_PC_|
         Datos del  _H0_|_0__|_1__|_2__|
          problema  _t__|_3__|_5__|_6__|
PA bloquea cada 1 u.t.
PB bloquea cada 3 u.t.
tiempos de bloqueo=2 u.t. (tanto para PA y PB).
                    
                      < = indica el instante de lanzamiento del proceso
                      > = indica el instante de finalización del proceso
                      X = se ejecuta el código del planificador
                      B = el proceso pasa a estado bloqueado
                      P = el proceso pasa a estado preparado
                      +++ = procesador 1
                      --- = procesador 2

                  |   |   |   |   |   |   |   |   |   |   |   |   |
   Pa             <+++B   |   P---B   |   P--->   |   |   |   |   |
   Pb             |   <+++|+++|+++B   |   P+++|+++>   |   |   |   |
   Pc             |   |   <---P   |---|---P   |---|---|--->   |   |
   Planificador   X   X   X   X   X   |   X   X   |   |   |   |   |
                  |___|___|___|___|___|___|___|___|___|___|___|___|___> t
                  0   1   2   3   4   5   6   7   8   9   10  11  12

                       _____|_PA_|_PB_|_PC_|
            Cálculos   __t__|_3__|_5__|_6__|
           de tiempos  __T__|_7__|_7__|_8__|
                       _T/t_|_2.3|_1.4|_1.3|
                         |
                         |_> Indice de penalización

Explicación:

  • En el instante de tiempo 3, el proceso Pa pasa a estado preparado y su tiempo de ejecución es menor al del proceso Pc. Por tanto, se apropia del procesador 2. Recuerde que siempre que sea posible el proceso que pasa a estado activo debe hacerlo en el último procesador que empleó para evitar el coste asociado a la migración. En caso de no ser posible, se migra al procesador disponible. El proceso B se deja en el procesador 2 para evitar el coste asociado a la migración pues no se considera posible migrar un proceso en estado activo.
  • En el instante de tiempo 6, el proceso Pa y Pb, que son más cortos que el proceso Pc, se apropian de los procesadores. Puesto que en asignación dinámica, siempre que sea posible se mantiene al proceso en el procesador en el que se ejecutó anteriormente, nuestro proceso Pa pasa al procesador 2, y el proceso Pb pasa al procesador 1 (pues estos son los procesadores en los que se ejecutaron anteriormente).

Revisado. --Pneira 18:27 23 nov 2011 (UTC)