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

De Wiki de Sistemas Operativos
Saltar a: navegación, buscar
(Ejercicio 3: solución revisada)
m (Ejercicio 3: eliminar espacios)
Línea 10: Línea 10:
 
   
 
   
 
                   Pa y Pb bloquean por operación de E/S tras 1 unidad de ejecución
 
                   Pa y Pb bloquean por operación de E/S tras 1 unidad de ejecución
 
+
 
                       < = 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
 
                       X = se ejecuta el código del planificador
 
                       X = se ejecuta el código del planificador
 
+
 
       |  |  |  |  |  |  |  |  |  |  |  |  |  |  |  |  |  |  |  |  |
 
       |  |  |  |  |  |  |  |  |  |  |  |  |  |  |  |  |  |  |  |  |
 
  Pa    <---|  |  |  |  |  |---|  |  |  |  |  |  |  |  |  |---|  |---|  |
 
  Pa    <---|  |  |  |  |  |---|  |  |  |  |  |  |  |  |  |---|  |---|  |
Línea 36: Línea 36:
 
   
 
   
 
  Cálculo de índices:
 
  Cálculo de índices:
 
+
 
                         | Pa | Pb |  Pc | Pd |
 
                         | Pa | Pb |  Pc | Pd |
 
                     --------------------------
 
                     --------------------------

Revisión del 20:37 22 mar 2011

Ejercicio 3

Datos del problema:
                        | Pa | Pb | Pc  | Pd |
                    --------------------------
                     H0 | 0  | 1  |  2  | 3  |
                    --------------------------
                     t  | 4  | 4  |  12 | 12 |
                    --------------------------

                 Pa y Pb bloquean por operación de E/S tras 1 unidad 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

      |   |   |   |   |   |   |   |   |   |   |   |   |   |   |   |   |   |   |   |   |
Pa    <---|   |   |   |   |   |---|   |   |   |   |   |   |   |   |   |---|   |---|   |
Pb    |   <---|   |   |   |   |   |---|   |   |   |   |   |   |   |   |   |---|   |---|
Pc    |   |   <---|---|   |   |   |   |---|---|---|---|   |   |   |   |   |   |   |   |
Pd    |   |   |   <   |---|---|   |   |   |   |   |   |---|---|---|---|   |   |   |   |
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  20

... continuación ...

      |   |   |   |   |   |   |   |   |   |   |   |   |
Pa    |   |   |   |   |   |   |   |   |   |   |   |   |
Pb    |   |   |   |   |   |   |   |   |   |   |   |   |
Pc    |---|---|---|---|   |   |   |   |---|---|   |   |
Pd    |   |   |   |   |---|---|---|---|   |   |---|---|
Plnf  |   |   |   |   X   |   |   |   X   |   X   |   | 
      |___|___|___|___|___|___|___|___|___|___|___|___|
      20  21  22  23  24  25  26  27  28  29  30  31  32

Cálculo de índices:

                        | Pa | Pb |  Pc | Pd |
                    --------------------------
                     t  | 4  | 4  |  12 | 12 |
                    --------------------------
                     T  | 19 | 20 |  30 | 32 |
                    --------------------------
                   T/t  |4.75| 5  | 2.5 |2.66|
                    --------------------------

Explicación:

Todos los procesos empiezan inicialmente en la segunda cola. Pa y Pb reciben una oportunidad de ejecución sin consumir su quantum debido a bloqueo, por tanto, permanecen en la segunda cola. Pc y Pd consumen todo su quantum, por tanto, promocionan a la primera cola. Los procesos Pa y Pb se ejecutan otra vez, pues los procesos que se encuentran en la segunda cola reciben dos oportunidades de ejecución. Tras esto, los procesos recién ascendidos a la primera cola, que son Pc y Pd, reciben su oportunidad de ejecución, en este caso con quantum de 4 unidades. De nuevo, se le da oportunidad de ejecución a los procesos de la segunda cola, que terminan su ejecución. Como no hay más procesos en la segunda cola, se le da una oportunidad de ejecución a los de la primera. --Pneira 18:36 22 mar 2011 (UTC)

¿Posible solución?

Supuestamente al inicio(t=0) en la 2ª cola solo hay un proceso(A), por lo tanto la 1ª iteracion solo ejecuta el proceso A, el la 2ª iteracion (t=1) estan los procesos [B,A]. Ahora se ejecutaria la 1ª cola, pero como estavacia pasa a 2 nuevas iteraciones de la 2ª cola: la primera iteración:[B,A,C,D], como C y D consumen el quantum pasan a la 1ª cola, y la 2ª iteracion se ejecutan los procesos [B,A], aora se ejecuta la 1ª cola completa(C y D),y cuando este vacia se vueleve a ejecutar la 2ª cola(que solo queda B) hasta terminar. ¿Cómo lo veis?


PA  <---|   |---|   |---|   |   |   |   |   |--->   |   |   |   |   |   |   |   |   |   |   |   |   |   |   |   |   |---|   |   |   |
PB  |   <---|   |---|   |   |   |   |   |---|   |   |   |   |   |   |   |   |   |   |   |   |   |   |   |   |   |   |   |   |   |--->
PC  |   |   <   |   |   |---|---|   |   |   |   |---|---|---|---|   |   |   |   |---|---|---|---|   |   |   |   |---|--->   |   |   |
PD  |   |   |   <   |   |   |   |---|---|   |   |   |   |   |   |---|---|---|---|   |   |   |   |---|---|---|---|   |   |---|--->   |