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

De Wiki de Sistemas Operativos
Saltar a: navegación, buscar
(Dudas)
(Ejercicio 3)
 
(No se muestran 11 ediciones intermedias de 7 usuarios)
Línea 1: Línea 1:
= Ejercicio 3 =
+
= Ejercicio 2 =
  
 
  Datos del problema:
 
  Datos del problema:
Línea 14: Línea 14:
 
                       > = 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.
 +
                      B = Bloquea.
 +
                      !!!= Indica que la cola sobre la que se itera ha cambiado
 
   
 
   
       |   |  |  |  |  |  |  |  |   |  |  |  |  |  |  |  |  |  |   |  |
+
       | 1 |  |  |  |  |  |  |  | 2 |  |  |  |  |  |  |  |  |  | 1 |  |
  Pa    <---|  |  |  |  |  |---|  |  |  |  |  |  |  |  |  |---|  |---|  |
+
  Pa    <---B...P---B...P  |  |  |  |---B...P  |  |  |  |  |  |  |  |--->  |
  Pb    |  <---|  |  |  |  |  |---|  |  |  |  |  |  |  |  |  |---|  |---|
+
      | 1 |  |  |  | 1 |  |  |  |  |  |   |  |  |  |  |  | 1 | 2 |
  Pc    |  |  <---|---|  |  |  |  |---|---|---|---|  |  |  |  |  |  |  |  |
+
  Pb    |  <---B...P  |  |---B...P  |  |  |  |  |  |  |  |  |  |---B...P--->
  Pd    |  |  |  <  |---|---|  |  |  |  |  |---|---|---|---|  |  |  |
+
      |  |  |  | 1 | ↑ |  |  |  |  | 1 |  |  |  |  |  |  |  |   |  |   |
  Plnf  X  X  X  |  X  |   X   X  X  |  |  |  X  |  |  |  X  |   |  |   X
+
  Pc    |  |  <   |---|---|  |  |  |  |---|---|---|---|  |  |  |  |  |  |  |
       |___|___|___|___|___|___|___|___|___|___|___|___|___|___|___|___|___|___|___|___|
+
      |  |  |  |  |  |  | 2 | ↑ |  |  |  |  |  | 1 |  |  |  |  |  |  |
 +
  Pd    |  |  |  <   |  |   |---|---|  |  |  |  |  |---|---|---|---|  |  |  |
 +
  Plnf  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
 
       0  1  2  3  4  5  6  7  8  9  10  11  12  13  14  15  16  17  18  19  20
 
   
 
   
  ... continuación ...
+
   
 
   
 
   
 
       |  |  |  |  |  |  |  |  |  |  |  |  |
 
       |  |  |  |  |  |  |  |  |  |  |  |  |
 
  Pa    |  |  |  |  |  |  |  |  |  |  |  |  |
 
  Pa    |  |  |  |  |  |  |  |  |  |  |  |  |
  Pb    |  |  |   |  |  |  |  |  |   |  |  |  |
+
  Pb    |  |  | 1 |  |  |  |  |  | 1 |  |  |  |
  Pc    |---|---|---|---|  |   |  |  |---|---|  |
+
  Pc    |---|---|---|---|  | 1 |  |  |---|---> 1 |  |
  Pd    |  |  |  |  |---|---|---|---|  |  |---|---|
+
  Pd    |  |  |  |  |---|---|---|---|  |  |---|--->
  Plnf  |   |  |  |  X  |  |  |  X  |  X  |  |  
+
  Plnf  X   |  |  |  X  |  |  |  X  |  X  |  |
       |___|___|___|___|___|___|___|___|___|___|___|___|
+
       |___|___|___|___|___|___|___|__!!!__|___|___|___|
 
       20  21  22  23  24  25  26  27  28  29  30  31  32
 
       20  21  22  23  24  25  26  27  28  29  30  31  32
 
   
 
   
Línea 45: Línea 51:
 
                     T/t  |4.75| 5  | 2.5 |2.66|
 
                     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:
 
Explicación:
Línea 74: Línea 84:
  
 
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)
 
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]]
 
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)
 
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)
 +
 +
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)
 +
 +
 +
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?