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

De Wiki de Sistemas Operativos
Saltar a: navegación, buscar
(Explicacion)
 
(No se muestran 5 ediciones intermedias de 3 usuarios)
Línea 12: Línea 12:
 
                       < = 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
                       & = El proceso se bloquea por una operacion de E/S  
+
                       B = El proceso se bloquea por una operacion de E/S  
 +
                      P = El proceso pasa a estado preparado
 
                       X = se ejecuta el código del planificador
 
                       X = se ejecuta el código del planificador
 
   
 
   
       |  |  |  |  |  |  |  |  |  |  |  |  |  |  |  |   |  |  |  | 
+
       |  |  |  |  |  |  |  |  |  |  |  |  |  |  |  |
  Pa    <---&   |  |---&   |  |--->   |  |  |  |   |  |  |  |  |  |  |  |
+
  Pa    <---B   |  P---B   |  |--->  |  |  |  |  |  |  |  |
  Pb    |  <---|---|   |  |  |  |---&   |  |---|--->  |  |  |   |  |  |  | 
+
  Pb    |  <---|---P   |  |  |  |---B   |  P---|--->  |  |  |
  Pc    |  |  <  |  |---|---|   |  |---|---|   |  |---|--->  |   |  |  |  | 
+
  Pc    |  |  <  |  |---|---P   |  |---|---P   |  |---|--->  |
  Plnf  X  X  |   X   X  |  X  X  X  |  X  |  X  |   |  |  |  |  |   |  
+
  Plnf  X  X  |  X  |  X  X  X  |  X  |  X  X   |  X   |
       |___|___|___|___|___|___|___|___|___|___|___|___|___|___|___|___|___|___|___|
+
       |___|___|___|___|___|___|___|___|___|___|___|___|___|___|___|
       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
+
 
 +
Notas (realizada por --[[Usuario:Pneira|Pneira]] 18:53 22 nov 2011 (UTC)):
 +
 
 +
* En el instante de tiempo 3, los procesos A y B entran a estado preparado simultáneamente, pasando el proceso A antes que B tal como indica el criterio de desempate del enunciado y antes que C por la compensación aplicada.
 +
* En el instante de tiempo 5, el proceso C consume todo su quantum, por tanto pasa al final de la cola de preparados, resultando la siguiente configuración: A, B, C.
 +
* En el instante de tiempo 8 se inserta A la cola de preparados (en la que hasta entonces no había ningún proceso).
 +
* En el instante de tiempo 9 se insertan los procesos B que se sitúan antes que A al aplicarsele la compensación. El proceso C se añade al final de la cola al haber consumido todo su quantum.
  
 
 
  Cálculo de índices:
 
  Cálculo de índices:
 
   
 
   
Línea 31: Línea 37:
 
                       t  | 3  | 5  |  6  |
 
                       t  | 3  | 5  |  6  |
 
                     --------------------
 
                     --------------------
                       T  | | 11 |  12 |
+
                       T  | 12 | 10 |  12 |
 
                     --------------------
 
                     --------------------
                     T/t  |2.6 | 2.2|  2  |
+
                     T/t  | | 2 |  2  |
 
                     --------------------
 
                     --------------------
  
 +
Revisado --[[Usuario:Pneira|Pneira]] 18:53 22 nov 2011 (UTC)
  
== Explicacion ==
+
DUDA: En las soluciones del [[sol-ejer2-planif-procesos|ejercicio 1]] (misma descripción de los procesos, diferentes criterios) el proceso A en su tercera unidad de tiempo asignada bloquea y termina 2 unidades después al resolverse el bloqueo, en vez de terminar en la tercera unidad de tiempo asignada, sin bloquear; se entiende que el bloqueo se ejecuta antes del fin del proceso. En esta solución no se contempla eso. ¿Cuál es el tratamiento correcto para estos casos? [[Usuario:rgalgal1|rgalgal1]]
 
 
En el instante Ho = 0 llega el proceso A que es el primero que se ejecuta , a la unidad de tiempo bloquea por operacion de E/S. En el instante Ho = 1 llega el proceso el proceso B y al ser el unico que esta en la cola de preparados se le asigna al procesador y gasta su quantum de 2 unidades de tiempo. En el instante Ho = 2 llega a la cola de preparado el proceso C siendo el unico que se encuentra en la cola de preparado en ese momento ya que el proceso B esta activo. En el instante Ho = 3 , estaria en la cola de preparados C y despues B pero el proceso al no gastar su cuantum de tiempo se le da una nueva oportunidad y se le asigna de nuevo al procesado con 2 unidades de tiempo de quantum, de nuevo se ejecuta solamente una unidad de tiempo y se bloquea el proceso A por operacion de E/S. En el instante Ho = 4 , en la cola de preparados queda el proceso C y B , en ese orden , por lo tanto se le asignara al procesador el proceso C y gasta sus 2 unidades de tiempo de quantum. En el instante Ho = 6 sucede lo mismo que en el instante Ho=3 el proceso A al no haber gastado su 2 unidade tiempo de quantum, se le da una nueva oportunidad y se le asigna al procesador , el proceso A termina. En el instante Ho= 7 en la cola esta primero B y luego C con lo que se le asignara B al procesador y la unidad de tiempo bloqueara por operacion de E/S. En el Ho = 8 se le asigna al procesador el proceso C ya que es el unico en la cola de preparados. En el instante Ho=10 llegan a estado preparado B y C pero siguiendo el 2º punto del enunciado dice que llega antes B que C por lo tanto se le asigna al procesador el proceso B y el proceso B agota sus 2 cuantum y tambien terminaria su proceso al ya tener sus 5 unidades de tiempo. Solo queda el proceso C que acaba en Ho = 14
 
 
 
Una duda, En el instante Ho=3 como bien has dicho estan preparados C y B y el Proceso A desbloquearia en ese momento Poniendose en cola, tu lo colocas el primero por no agotar el 50% de su cuantum pero en el ejercicio dice que solo se haria eso si en cola de preparados hay un unico proceso, y aqui nos encontramos que B y C estan preparados, por lo que A se colocaria despues de B no?. Lo mismo para el instante H0=6.
 

Revisión actual del 16:15 9 nov 2012

Datos del problema:

                        | Pa | Pb | Pc  |
                    --------------------
                     H0 | 0  | 1  |  2  |
                    --------------------
                     t  | 3  | 5  |  6  |
                    --------------------

                 Pa bloquea por operación de E/S tras 1 unidad de ejecución
                 Pb bloquea por operación de E/S tras 3 unidad de ejecución

                      < = indica el instante de lanzamiento del proceso
                      > = indica el instante de finalización del proceso
                      B = El proceso se bloquea por una operacion de E/S 
                      P = El proceso pasa a estado preparado
                      X = se ejecuta el código del planificador

      |   |   |   |   |   |   |   |   |   |   |   |   |   |   |   |
Pa    <---B   |   P---B   |   |--->   |   |   |   |   |   |   |   |
Pb    |   <---|---P   |   |   |   |---B   |   P---|--->   |   |   |
Pc    |   |   <   |   |---|---P   |   |---|---P   |   |---|--->   |
Plnf  X   X   |   X   |   X   X   X   |   X   |   X   X   |   X   |
      |___|___|___|___|___|___|___|___|___|___|___|___|___|___|___|
      0   1   2   3   4   5   6   7   8   9   10  11  12  13  14  15

Notas (realizada por --Pneira 18:53 22 nov 2011 (UTC)):

  • En el instante de tiempo 3, los procesos A y B entran a estado preparado simultáneamente, pasando el proceso A antes que B tal como indica el criterio de desempate del enunciado y antes que C por la compensación aplicada.
  • En el instante de tiempo 5, el proceso C consume todo su quantum, por tanto pasa al final de la cola de preparados, resultando la siguiente configuración: A, B, C.
  • En el instante de tiempo 8 se inserta A la cola de preparados (en la que hasta entonces no había ningún proceso).
  • En el instante de tiempo 9 se insertan los procesos B que se sitúan antes que A al aplicarsele la compensación. El proceso C se añade al final de la cola al haber consumido todo su quantum.
Cálculo de índices:

                        | Pa | Pb |  Pc |
                    --------------------
                     t  | 3  | 5  |  6  |
                    --------------------
                     T  | 12 | 10 |  12 |
                    --------------------
                   T/t  | 4  | 2 |  2  |
                    --------------------

Revisado --Pneira 18:53 22 nov 2011 (UTC)

DUDA: En las soluciones del ejercicio 1 (misma descripción de los procesos, diferentes criterios) el proceso A en su tercera unidad de tiempo asignada bloquea y termina 2 unidades después al resolverse el bloqueo, en vez de terminar en la tercera unidad de tiempo asignada, sin bloquear; se entiende que el bloqueo se ejecuta antes del fin del proceso. En esta solución no se contempla eso. ¿Cuál es el tratamiento correcto para estos casos? rgalgal1