Diferencia entre revisiones de «Sol-ejer2-planif-procesos»

De Wiki de Sistemas Operativos
Saltar a: navegación, buscar
(Turno rotatorio)
Línea 5: Línea 5:
 
           problema  _t__|_3__|_5__|_6__|
 
           problema  _t__|_3__|_5__|_6__|
 
   
 
   
 +
    P<sub>A</sub> bloquea por E/S cada 1 unidad de tiempo
 +
    P<sub>B</sub> bloquea por E/S cada 3 unidades de tiempo
 
                       < = indica el instante de lanzamiento del proceso
 
                       < = indica el instante de lanzamiento del proceso
 
                       > = indica el instante de finalización del proceso
 
                       > = indica el instante de finalización del proceso
Línea 10: Línea 12:
 
                                                                  
 
                                                                  
 
                   |  |  |  |  |  |  |  |  |  |  |  |  |  |  |  |  |  |  |  |   
 
                   |  |  |  |  |  |  |  |  |  |  |  |  |  |  |  |  |  |  |  |   
               P<sub>A</sub>  <---|---|  |  |  |  |--->   |  |  |  |  |  |  |  |  |  |  |  |   
+
               P<sub>A</sub>  <---|  |  |  |  |---|   |  |  |--->   |  |  |  |  |  |  |  |  |   
               P<sub>B</sub>  |  <   |---|---|  |  |  |---|---|  |  |--->  |  |  |  |  |  |  |   
+
               P<sub>B</sub>  |  <---|---|  |  |  |---|   |  |  |---|--->  |  |  |  |  |  |  |   
               P<sub>C</sub>  |  |  <   |   |---|---|  |  |---|---|  |---|--->  |  |  |  |  |   
+
               P<sub>C</sub>  |  |  <  |---|---|  |  |---|---|  |  |  |---|--->  |  |  |  |  |   
 
     Planificador  X  |  X  |  X  |  X  X  |  X  |  X  X  |  X  |  |  |  |  |       
 
     Planificador  X  |  X  |  X  |  X  X  |  X  |  X  X  |  X  |  |  |  |  |       
              -----|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|--> t
+
              ____|___|___|___|___|___|___|___|___|___|___|___|___|___|___|___|___|___|___|___|__> t
 
                   0  1  2  3  4  5  6  7  8  9  10  11  12  13  14  15  16  17  18  19   
 
                   0  1  2  3  4  5  6  7  8  9  10  11  12  13  14  15  16  17  18  19   
 
   
 
   
 
                   _____|_P<sub>A</sub>_|_P<sub>B</sub>_|_P<sub>C</sub>_|
 
                   _____|_P<sub>A</sub>_|_P<sub>B</sub>_|_P<sub>C</sub>_|
 
         Cálculos  __t__|_3__|_5__|_6__|
 
         Cálculos  __t__|_3__|_5__|_6__|
       de tiempos  __T__|_7__|_11_|_12_|
+
       de tiempos  __T__|_10_|_11_|_12_|
                   _T/t_|2.3_|2.2_|_2__|
+
                   _T/t_|3.3_|2.2_|_2__|
 
 
En esta solución propuesta no se ha tenido en cuenta el bloqueo que sufre el proceso A cuando lleva una unidad de tiempo de ejecución.
 
 
 
                      < = indica el instante de lanzamiento del proceso
 
                      > = indica el instante de finalización del proceso
 
                      X = se ejecuta el código del planificador
 
                      / = Tiempo del quantum no aprovechado debido a bloqueo o a la finalización del proceso.                                 
 
                  |  |  |  |  |  |  |  |  |  |  |  |  |  |  |  |  |  |  |  | 
 
              P<sub>A</sub>  <---|///|  |  |  |  |---|///|  |  |  |  |---|///>  |  |  |  |  | 
 
              P<sub>B</sub>  |  <  |---|---|  |  |  |  |---|---|  |  |  |  |---|///>  |  |  | 
 
              P<sub>C</sub>  |  |  <  |  |---|---|  |  |  |  |---|---|  |  |  |  |---|--->  | 
 
    Planificador  X  |  X  |  X  |  X  X  |  X  |  X  X  |  X  |  |  |  |  |     
 
              -----|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|--> t
 
                  0  1  2  3  4  5  6  7  8  9  10  11  12  13  14  15  16  17  18  19 
 
 
 
 
 
 
 
 
 
  
 
= Turno rotatorio proporcional al número de procesos =
 
= Turno rotatorio proporcional al número de procesos =

Revisión del 16:30 21 mar 2011

Turno rotatorio

                    ____|_PA_|_PB_|_PC_|
         Datos del  _H0_|_0__|_1__|_2__|
          problema  _t__|_3__|_5__|_6__|

   PA bloquea por E/S cada 1 unidad de tiempo
   PB bloquea por E/S cada 3 unidades de tiempo
                      < = indica el instante de lanzamiento del proceso
                      > = indica el instante de finalización del proceso
                      X = se ejecuta el código del planificador
                                                                
                  |   |   |   |   |   |   |   |   |   |   |   |   |   |   |   |   |   |   |   |   
              PA  <---|   |   |   |   |---|   |   |   |--->   |   |   |   |   |   |   |   |   |   
              PB  |   <---|---|   |   |   |---|   |   |   |---|--->   |   |   |   |   |   |   |   
              PC  |   |   <   |---|---|   |   |---|---|   |   |   |---|--->   |   |   |   |   |   
    Planificador  X   |   X   |   X   |   X   X   |   X   |   X   X   |   X   |   |   |   |   |      
              ____|___|___|___|___|___|___|___|___|___|___|___|___|___|___|___|___|___|___|___|__> t
                  0   1   2   3   4   5   6   7   8   9   10  11  12  13  14  15  16  17  18  19  

                  _____|_PA_|_PB_|_PC_|
       Cálculos   __t__|_3__|_5__|_6__|
      de tiempos  __T__|_10_|_11_|_12_|
                  _T/t_|3.3_|2.2_|_2__|

Turno rotatorio proporcional al número de procesos

                    ____|_PA _|_PB_|_PC _|
         Datos del  _H0_|_0__|_1__|_2__|
          problema  _t__|_3__|_5__|_6__|

                      < = indica el instante de lanzamiento del proceso
                      > = indica el instante de finalización del proceso
                      X = se ejecuta el código del planificador
                                                                
                  |   |   |   |   |   |   |   |   |   |   |   |   |   |   |   |   |   |   |   |   |
              PA  <---|   |   |---|   |   |--->   |   |   |   |   |   |   |   |   |   |   |   |   |
              PB  |   <---|   |   |---|   |   |---|   |   |---|   |--->   |   |   |   |   |   |   |
              PC  |   |   <---|   |   |---|   |   |---|---|   |---|   |--->   |   |   |   |   |   |
   Planificador   X   X   X   X   X   X   X   X   X   |   X   X   X   X   |   |   |   |   |   |   |   
             -----|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---> t
                  0   1   2   3   4   5   6   7   8   9   10  11  12  13  14  15  16  17  18  19  20

                  _____|_PA_|_PB_|_PC_|
       Cálculos   __t__|_3__|_5__|_6__|
      de tiempos  __T__|_7__|_12_|_12_|
                  _T/t_|2.3_|2.4_|_2__|
=

Observaciones

=

- Al no existir en el instante de tiempo 0 problemas de concurrencia de procesos, ¿no debería el proceso A tener derecho a sus dos unidades de tiempo de quantum, aunque este solo utilice una unidad de tiempo debido al bloqueo por E/S?. Esto dejaría al procesador con dos procesos en estado preparado (B y C) en el instante de tiempo 2, donde ya se reduciría el quantum a 1 debido a la existencia de 2 o más procesos en estado preparado. ¿Cómo lo veis?