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

De Wiki de Sistemas Operativos
Saltar a: navegación, buscar
(Ejercicio 3)
 
(No se muestran 30 ediciones intermedias de 14 usuarios)
Línea 1: Línea 1:
= Ejercicio 3 =
+
= Ejercicio 2 =
  
                    ____|_P<sub>A</sub>_|_P<sub>B</sub>_|_P<sub>C</sub>_|_P<sub>D</sub>_|
+
Datos del problema:
          Datos del _H0_|_0__|_1__|_2__|_3__|
+
                        | Pa | Pb | Pc  | Pd |
          problema _t__|_4__|_4__|_12_|_12_|
+
                    --------------------------
 +
                      H0 | 0 | | | |
 +
                    --------------------------
 +
                      t | | | 12 | 12 |
 +
                    --------------------------
 +
 +
                  Pa y Pb bloquean por operación de E/S tras 1 unidad de ejecución
 
   
 
   
                  P<sub>A</sub> y P<sub>B</sub> 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
                                                               
+
                      ↑ = promociona porque ha consumido el quantum.
  <sub> </sub> |   |  |  |  |  |  |  |  |   |  |  |  |  |  |  |  |  |  |   |  |  |  |  |  |  |  |  |  |  |  |  |  |
+
                      B = Bloquea.
P<sub>A</sub>  <---|   |   |  |   |---|  |  |   |  |  |  |  |  |  |  |  |  |  |  |   |  |   |   |   |  |---|  |--->   |
+
                      !!!= Indica que la cola sobre la que se itera ha cambiado
P<sub>B</sub>  <---|  |  |  |  |  |---|  |  |  |   |   |  |  |  |  |   |  |  |  |  |  |  |  |  |  |  |  |---|  |--->
+
   
  P<sub>C</sub>  |  |  <---|---|  |  |  |  |---|---|---|---|  |  |  |  |---|---|---|---|  |  |  |  |---|--->   |  |  |  |  |  |
+
      | 1 |  |  |  |  |  |  |  | 2 |  |  |  |  |  |  |  |  |  | 1 |  |
P<sub>D</sub>  |  |  |  <   |---|---|  |  |  |   |  |  |---|---|---|---|  |  |  |  |---|---|---|---|  |  |---|--->  |  |  |  |
+
Pa    <---B...P---B...P   |  |  |  |---B...P   |  |  |  |  |  |  |  |--->   |
  PlnfX   X  X   |   X  |  X  X   X  |  |   |  X   |  |  |   X  |  |  |  X  |  |   |  X  |  X   |  X  X  X  X   X 
+
      |  | 1 |  |  |  | 1 |  |  |  |  |  |  |  |  |  |  |  | 1 |  | 2 |
  ___|___|___|___|___|___|___|___|___|___|___|___|___|___|___|___|___|___|___|___|___|___|___|___|___|___|___|___|___|___|___|___|___|_> t
+
Pb    <---B...P   |  |---B...P  |  |  |   |  |  |  |  |  |  |---B...P--->
    0  1  2  3  4  5  6  7  8  9  10  11  12  13  14  15  16  17  18  19  20  21  22  23  24  25  26  27  28  29  30  31  32
+
      |  |  |  | 1 | |  |  |  |  | 1 |  |  |  |  |  |  |  |  |  |  |
 +
  Pc    |  |  <   |---|---|  |  |  |  |---|---|---|---|  |  |  |  |   |   |   |
 +
      |  |  |  |  |   | 2 | ↑ |  |  |  |  |  | 1 |  |  |  |  |   |   |
 +
Pd    |  |  |  <   |  |  |---|---|   |  |  |  |  |---|---|---|---|  |  |  |
 +
  Plnf  X   X  X  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
 +
 +
 +
 +
      |  |  |  |  |  |  |  |  |  |  |  |  |
 +
Pa    |  |  |  |  |  |  |  |  |  |  |  |  |
 +
Pb    |  |  | 1 |  |  |  |  |  | 1 |  |  |  |
 +
Pc    |---|---|---|---|  | 1 |  |  |---|---> 1 |  |
 +
Pd    |  |  |  |  |---|---|---|---|  |  |---|--->
 +
Plnf  X  |  |  |  X  |  |  |  X  |  X  |  |
 +
      |___|___|___|___|___|___|___|__!!!__|___|___|___|
 +
      20  21  22  23  24  25  26  27  28  29  30  31  32
 +
 +
Cálculo de índices:
 
   
 
   
                  _____|_P<sub>A</sub>_|_P<sub>B</sub>_|_P<sub>C</sub>_|_P<sub>D</sub>_|
+
                        | Pa | Pb |  Pc | Pd |
        Cálculos   __t__|_4__|_4__|_12_|_12_|
+
                    --------------------------
      de tiempos __T__|_31_|_31_|_24_|_25_|
+
                      t  | 4  | 4  |  12 | 12 |
                  _T/t_|7.75|7.75|_2__|2.08|
+
                    --------------------------
 +
                      T  | 19 | 20 |  30 | 32 |
 +
                    --------------------------
 +
                    T/t  |4.75| 5  | 2.5 |2.66|
 +
                    --------------------------
 +
 
 +
*He añadido sobre cada proceso el número de vez de iteración de la cola a la que pertenece. Así se puede ver que por cada dos iteraciones de una cola, se hace una iteración de la otra.
 +
* Notese que en el instante 28, se itera sobre la cola 2 dos veces, pero al no contener elementos la iteración es nula, y se pasa a la siguiente cola prevista.
 +
 
 +
 
 +
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. --[[Usuario:Pneira|Pneira]] 18:36 22 mar 2011 (UTC)
 +
 
 +
= Dudas =
 +
 
 +
No entiendo por qué en la unidad de tiempo 18 no aparece el proceso c y d y posteriormente a b c y d.Esto es a lo que me refiero --[[Usuario:Jherrera|Jherrera]]:
 +
 
 +
 
 +
      |  |  |  |  |  |  |  |  |  |  |  |  |
 +
Pa    |  |  |  |  |  |  |  |  |--->   |  |  |
 +
Pb    |  |  |  |  |  |  |  |  |   |--->   |  |
 +
Pc    |---|---|---|---|  |  |  |  |  |  |------->
 +
Pd    |  |  |  |  |---|---|---|---|  |  |  |   |------>
 +
Plnf  |  |  |  |  X  |  |  |  X  |  X  |  X
 +
      |___|___|___|___|___|___|___|___|___|___|___|___|
 +
      18  19  20  21  22  23  24  25  26  27  28  29  30
 +
 
 +
 
 +
 
 +
Solucion: Por que en la 2ª cola estan los procesos A y B, por que nunca consumen los quantums, y la 2ª cola siempre se itera 2 veces.
 +
 
 +
 
 +
¿No se supone que la cola 1 posee mayor prioridad que la 2? siendo asi, mientras C y D esten en la 1ª cola no se le debería volver a dar oportunidad a la cola 2 no?¿--[[Usuario:DvS 013|DvS 013]]
 +
 
 +
Creo que se lo que dices. Aunque C y D esten en la primera cola, se pasa a la segunda. Esto es porque la primera cola no tiene mas prioridad, sino solo un quantum más ancho. Entonces se mira la primera cola, luego 2 veces la segunda, y vuelta a empezar --[[Usuario:PCamino|PCamino]]
 +
 
 +
El problema creo yo es que el enunciado ha sido modificado de esta mañana para acá, porque yo también hice el ejercicio para subirlo a la wiki, pero se me adelantaron, y esta mañana en el enunciado ponia que la cola 1 tenia más prioridad que la 2, y ademas no ponia el tiempo que estaban en estado bloqueado los procesos, ahora si lo pone, y no pone lo de la prioridad. Yo estoy de acuerdo con la solucion propuesta arriba. --[[Usuario:Josmorgav1|Josmorgav1]] 21:42 22 mar 2011 (UTC)
 +
 
 +
 
 +
 
 +
 
 +
 
 +
Vaya caos! Podemos poner ambos ejercicios --[[Usuario:PCamino|PCamino]]
 +
 
 +
Con respecto  a la prioridad de las colas multinivel realimentadas, creo que carecen de prioridad, simplemente basta con saber cuantas veces se ejecutan cada una y en cual de ellas se meten los procesos que van llegando.--[[Usuario:Jmf bsk|Jmf bsk]] 23:10 22 mar 2011 (UTC)
 +
 
 +
 
 +
 
 +
DUDA: Creo que este ejercicio está hecho para tiempos de bloqueo de 2 unidades, mientras que en el enunciado los tiempos de bloqueo es de 1 t. Si fuera para tiempos de bloqueo = 1 en el instante 2 Pa regresa a la cola 2 de preparados, luego pasaría a estado activo antes que Pd , por lo que en t=4 Pa pasaría a estado activo,después iría Pd y después la segunda ejecución de Pb. Lo escribo para aclararlo:
 +
 
 +
Pa y Pb bloquean cada unidad de tiempo, durante una unidad de tiempo de bloqueo.
 +
 
 +
      |  |  |  |  |  |  |  |  |  |  |  |  |  |  |  |  |  |  |  |  |
 +
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
 +
 
 +
¿es correcta la solución que planteo para una unidad de tiempo de bloqueo?
 +
 
 +
----------------------------------------------------------------------------------------------
 +
 
 +
 
 +
==='''Nueva Duda:'''===
 +
 
 +
Si sobre la cola 2 se itera dos veces, porque no se vuelve al Pa y Pb en el instante de tiempo 8? Como sucede en el instante 18.
 +
 
 +
R:
 +
Fijate que en el instante de tiempo t=6 ya es la 2ª vez que se itera sobre Pa y Pb, la diferencia radica en que en la cola 2 inicialmente existian cuatro procesos que había que atenderlos en RR, añadiendo que Pa y Pb bloquean cada 1 UT, a diferencia del intante t=18 solo existen Pa y Pb y como dice el enunciado se les da dos oportunidades de ejecucion si no consumen su quantum.
 +
--[[Usuario:Albsolnog|Albsolnog]] 11:53 13 nov 2011 (UTC)
  
-Observaciones
+
R1:
 +
Añado para mayor comprensión del ejercicio que en el instante t=6 empieza la segunda iteración de la cola 2, lo que pasa es que en esta iteración nada más que entran Pa y Pb, ya que los procesos Pc y Pd han consumido su quantum entero y han promocionado a la cola 1. --[[Usuario:Josazcrom|Josazcrom]] 18:55 22 nov 2011 (UTC)
  
Por que ejecutas seguidamente los procesos C y D seguidamente, ¿la cola 1 solo se ejecuta 1 vez y pasa a la 2ª o varias veces hasta que se agotan los procesos? ¿qué opináis?
 
  
Yo creo que la cola 1 tiene mas prioridad que la cola 2 y por eso se ejecutan los procesos de la cola 1 hasta que no queden más pero no estoy totalmente seguro de que sea así
+
P:No terminaría el proceso A y el B justo después de hacer el bloqueo? Porqué en el ejercicio termina justo antes de ser bloqueado incluso?

Revisión actual del 21:55 3 nov 2012

Ejercicio 2

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
                      ↑ = promociona porque ha consumido el quantum.
                      B = Bloquea.
                     !!!= Indica que la cola sobre la que se itera ha cambiado

      | 1 |   |   |   |   |   |   |   | 2 |   |   |   |   |   |   |   |   |   | 1 |   |
Pa    <---B...P---B...P   |   |   |   |---B...P   |   |   |   |   |   |   |   |--->   |
      |   | 1 |   |   |   | 1 |   |   |   |   |   |   |   |   |   |   |   | 1 |   | 2 |
Pb    |   <---B...P   |   |---B...P   |   |   |   |   |   |   |   |   |   |---B...P--->
      |   |   |   | 1 | ↑ |   |   |   |   | 1 |   |   |   |   |   |   |   |   |   |   |
Pc    |   |   <   |---|---|   |   |   |   |---|---|---|---|   |   |   |   |   |   |   |
      |   |   |   |   |   |   | 2 | ↑ |   |   |   |   |   | 1 |   |   |   |   |   |   |
Pd    |   |   |   <   |   |   |---|---|   |   |   |   |   |---|---|---|---|   |   |   |
Plnf  X   X   X   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



      |   |   |   |   |   |   |   |   |   |   |   |   |
Pa    |   |   |   |   |   |   |   |   |   |   |   |   |
Pb    |   |   | 1 |   |   |   |   |   | 1 |   |   |   |
Pc    |---|---|---|---|   | 1 |   |   |---|---> 1 |   |
Pd    |   |   |   |   |---|---|---|---|   |   |---|--->
Plnf  X   |   |   |   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|
                    --------------------------
  • He añadido sobre cada proceso el número de vez de iteración de la cola a la que pertenece. Así se puede ver que por cada dos iteraciones de una cola, se hace una iteración de la otra.
  • Notese que en el instante 28, se itera sobre la cola 2 dos veces, pero al no contener elementos la iteración es nula, y se pasa a la siguiente cola prevista.


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)

Dudas

No entiendo por qué en la unidad de tiempo 18 no aparece el proceso c y d y posteriormente a b c y d.Esto es a lo que me refiero --Jherrera:


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


Solucion: Por que en la 2ª cola estan los procesos A y B, por que nunca consumen los quantums, y la 2ª cola siempre se itera 2 veces.


¿No se supone que la cola 1 posee mayor prioridad que la 2? siendo asi, mientras C y D esten en la 1ª cola no se le debería volver a dar oportunidad a la cola 2 no?¿--DvS 013

Creo que se lo que dices. Aunque C y D esten en la primera cola, se pasa a la segunda. Esto es porque la primera cola no tiene mas prioridad, sino solo un quantum más ancho. Entonces se mira la primera cola, luego 2 veces la segunda, y vuelta a empezar --PCamino

El problema creo yo es que el enunciado ha sido modificado de esta mañana para acá, porque yo también hice el ejercicio para subirlo a la wiki, pero se me adelantaron, y esta mañana en el enunciado ponia que la cola 1 tenia más prioridad que la 2, y ademas no ponia el tiempo que estaban en estado bloqueado los procesos, ahora si lo pone, y no pone lo de la prioridad. Yo estoy de acuerdo con la solucion propuesta arriba. --Josmorgav1 21:42 22 mar 2011 (UTC)



Vaya caos! Podemos poner ambos ejercicios --PCamino

Con respecto a la prioridad de las colas multinivel realimentadas, creo que carecen de prioridad, simplemente basta con saber cuantas veces se ejecutan cada una y en cual de ellas se meten los procesos que van llegando.--Jmf bsk 23:10 22 mar 2011 (UTC)


DUDA: Creo que este ejercicio está hecho para tiempos de bloqueo de 2 unidades, mientras que en el enunciado los tiempos de bloqueo es de 1 t. Si fuera para tiempos de bloqueo = 1 en el instante 2 Pa regresa a la cola 2 de preparados, luego pasaría a estado activo antes que Pd , por lo que en t=4 Pa pasaría a estado activo,después iría Pd y después la segunda ejecución de Pb. Lo escribo para aclararlo:

Pa y Pb bloquean cada unidad de tiempo, durante una unidad de tiempo de bloqueo.

      |   |   |   |   |   |   |   |   |   |   |   |   |   |   |   |   |   |   |   |   |
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

¿es correcta la solución que planteo para una unidad de tiempo de bloqueo?



Nueva Duda:

Si sobre la cola 2 se itera dos veces, porque no se vuelve al Pa y Pb en el instante de tiempo 8? Como sucede en el instante 18.

R: Fijate que en el instante de tiempo t=6 ya es la 2ª vez que se itera sobre Pa y Pb, la diferencia radica en que en la cola 2 inicialmente existian cuatro procesos que había que atenderlos en RR, añadiendo que Pa y Pb bloquean cada 1 UT, a diferencia del intante t=18 solo existen Pa y Pb y como dice el enunciado se les da dos oportunidades de ejecucion si no consumen su quantum. --Albsolnog 11:53 13 nov 2011 (UTC)

R1: Añado para mayor comprensión del ejercicio que en el instante t=6 empieza la segunda iteración de la cola 2, lo que pasa es que en esta iteración nada más que entran Pa y Pb, ya que los procesos Pc y Pd han consumido su quantum entero y han promocionado a la cola 1. --Josazcrom 18:55 22 nov 2011 (UTC)


P:No terminaría el proceso A y el B justo después de hacer el bloqueo? Porqué en el ejercicio termina justo antes de ser bloqueado incluso?