Diferencia entre revisiones de «Discusión:Solución ejercicio 1»

De Wiki de Sistemas Operativos
Saltar a: navegación, buscar
 
(No se muestran 4 ediciones intermedias de 2 usuarios)
Línea 27: Línea 27:
 
               |___|___|___|___|___|___|___|___|___|___|___|___|___|___|___|___|___|___|___|___|
 
               |___|___|___|___|___|___|___|___|___|___|___|___|___|___|___|___|___|___|___|___|
 
                               (2)            (1)                    (2)
 
                               (2)            (1)                    (2)
 +
(1) A p2 solo le quedaba una unidad de tiempo de su quantum, así que solo ejecuta una línea y no 3. Aquí cabría preguntarse si al pasar a estado bloqueado un nuevo quantum le es asignado
  
  (1) A p2 solo le quedaba una unidad de tiempo de su quantum, así que solo ejecuta una línea y no 3. Aquí cabría preguntarse si al pasar a estado bloqueado un nuevo quantum le es asignado
+
(2) pese a que p1 agota su quantum, como p2 está bloqueado y p1 es el único proceso se le asigna un nuevo quantum
  (2) pese a que p1 agota su quantum, como p2 está bloqueado y p1 es el único proceso se le asigna un nuevo quantum
+
 
 +
== Duda del ejercicio del Tema 7. ==
 +
 
 +
En el ejercicio 1 del Tema 7, en el instante 14, se produce la instrucción Down(s2), cuando el valor de s2 es igual a 1, y en el ejemplo, bloquea al proceso 2.
 +
Es correcto esa ejecución¿?
 +
Al ser el valor del contador de s2 igual a 1, debería de seguir con la siguiente instrucción.
 +
 
 +
El resultado final, ¿puede ser de esta forma?
 +
 
 +
 
 +
      X = El proceso pasa a estado bloqueado.
 +
      / = El proceso pasa a estado preparado.
 +
 
 +
      |  |  | #1| #2| #3| #4| #5| #1|  |  |  | #2| #3| #4|  |  |  | #5|#1 |  |
 +
    p1|  |  |---|---|---|---|---|---|  |  |  |---|---|---|  |  |  |---|---> 
 +
      |  |  |  |  |  |  |  |  |  |  |  |  |  |  |  |  |  |  |  |  |
 +
      | #1| #2|  |  |  |  |  |  | #3| #4| #1|  |  |  | #2| #3| #4|  |  | #1|
 +
    p2|---|---X  |  |  |  |  /  |---|---|---|  |  |  |---|---|---|  |  |--->
 +
      |  |  |  |  |  |  |  |  |  |  |  |  |  |  |  |  |  |  |  |  |
 +
      |___|___|___|___|___|___|___|___|___|___|___|___|___|___|___|___|___|___|___|___|
 +
      0  1  2  3  4  5  6  7  8  9  10  11  12  13  14  15  16  17  18  19 20

Revisión actual del 18:09 7 dic 2011

No estoy del todo seguro de la solución dada. Teniendo en cuenta los valores en cada momento de semáforos(justo después de ejecutar la instrucción y antes de que lo haga el planificador):

     X = El proceso pasa a estado bloqueado.
     / = El proceso pasa a estado preparado.
     > = Fin del proceso

             |   |   | #1| #2| #3| #4| #5| #1|   | #2|   |   |   | #3| #4| #5| #1|   |   |   |
           p1|   |   |---|---|---|---|---|---|   |---X   /   |   |---|---|---|--->   |   |   |
             |   |   |   |   |   |   |   |   |   |   |   |   |   |   |   |   |   |   |   |   |
             | #1| #2|   |   |   |   |   |   | #3|   | #4| #1| #2|   |   |   |   | #3| #4| #1|
           p2|---|---X   |   |   |   |   /   |---|   |---|---|---|   |   |   /   |---|---|--->
             |   |   |   |   |   |   |   |   |   |   |   |   |   |   |   |   |   |   |   |   |
             |___|___|___|___|___|___|___|___|___|___|___|___|___|___|___|___|___|___|___|___|
             0   1   2   3   4   5   6   7   8   9   10  11  12  13  14  15  16  17  18  19 20
             *********************************************************************************
s1.cont      | 1 | 1 | 1 | 0 | 0 | 0 | 0 | 0 | 0 | 0 | 0 | 0 | 0 | 0 | 0 | 0 | 2 | 2 | 2 | 2 |
             |___|___|___|___|___|___|___|___|___|___|___|___|___|___|___|___|___|___|___|___|
s1.prlist    |   |   |   |   |   |   |   |   |   |p1 |   |   |   |   |   |   |   |   |   |   |
             |___|___|___|___|___|___|___|___|___|___|___|___|___|___|___|___|___|___|___|___|
s2.cont      | 0 | 0 | 0 | 0 | 0 | 0 | 0 | 0 | 0 | 0 | 0 | 0 | 0 | 0 | 0 | 0 | 0 | 0 | 0 | 0 |
             |___|___|___|___|___|___|___|___|___|___|___|___|___|___|___|___|___|___|___|___|
s2.prlist    |   |p2 |p2 |p2 |p2 |p2 |   |   |   |   |   |   | p2| p2| p2|   |   |   |   |   |
             |___|___|___|___|___|___|___|___|___|___|___|___|___|___|___|___|___|___|___|___|
p1.quantum   | 3 | 3 | 2 | 1 | 0 | 2 | 1 | 0 | 3 | 2 | 2 | 2 | 2 | 1 | 0 | 3 | 2 | nc| nc| nc|
             |___|___|___|___|___|___|___|___|___|___|___|___|___|___|___|___|___|___|___|___|
p2.quantum   | 2 | 1 | 1 | 1 | 1 | 1 | 1 | 1 | 0 | 3 | 2 | 1 | 0 | 3 | 3 | 3 | 3 | 2 | 1 | 0 |
             |___|___|___|___|___|___|___|___|___|___|___|___|___|___|___|___|___|___|___|___|
                              (2)             (1)                     (2)

(1) A p2 solo le quedaba una unidad de tiempo de su quantum, así que solo ejecuta una línea y no 3. Aquí cabría preguntarse si al pasar a estado bloqueado un nuevo quantum le es asignado

(2) pese a que p1 agota su quantum, como p2 está bloqueado y p1 es el único proceso se le asigna un nuevo quantum

Duda del ejercicio del Tema 7.

En el ejercicio 1 del Tema 7, en el instante 14, se produce la instrucción Down(s2), cuando el valor de s2 es igual a 1, y en el ejemplo, bloquea al proceso 2. Es correcto esa ejecución¿? Al ser el valor del contador de s2 igual a 1, debería de seguir con la siguiente instrucción.

El resultado final, ¿puede ser de esta forma?


     X = El proceso pasa a estado bloqueado.
     / = El proceso pasa a estado preparado.
     |   |   | #1| #2| #3| #4| #5| #1|   |   |   | #2| #3| #4|   |   |   | #5|#1 |   |
   p1|   |   |---|---|---|---|---|---|   |   |   |---|---|---|   |   |   |---|--->   
     |   |   |   |   |   |   |   |   |   |   |   |   |   |   |   |   |   |   |   |   |
     | #1| #2|   |   |   |   |   |   | #3| #4| #1|   |   |   | #2| #3| #4|   |   | #1|
   p2|---|---X   |   |   |   |   /   |---|---|---|   |   |   |---|---|---|   |   |--->
     |   |   |   |   |   |   |   |   |   |   |   |   |   |   |   |   |   |   |   |   |
     |___|___|___|___|___|___|___|___|___|___|___|___|___|___|___|___|___|___|___|___|
     0   1   2   3   4   5   6   7   8   9   10  11  12  13  14  15  16  17  18  19 20