Diferencia entre revisiones de «Sol-ejer-planif-procesos-3»

De Wiki de Sistemas Operativos
Saltar a: navegación, buscar
(Propuesta de corrección y solución al apartado B)
(Ejercicio 4)
 
(No se muestran 9 ediciones intermedias de 4 usuarios)
Línea 1: Línea 1:
APARTADO 1
+
== Traza de los procesos ==
  
Traza de los procesos A y B
+
=== Proceso A ===
  
Proceso A
 
---------
 
 
  1, 2, 3,  4,      3,  4,      3,  5
 
  1, 2, 3,  4,      3,  4,      3,  5
 
       |    |        |    |        |     
 
       |    |        |    |        |     
 
       i=0  Bloquea  i=1  Bloquea  i=2   
 
       i=0  Bloquea  i=1  Bloquea  i=2   
     
+
   
Por tanto tenemos t=8
+
=== Proceso B ===
  
 
Proceso B
 
---------
 
 
  1, 2,  3, 2,  3, 2,  4
 
  1, 2,  3, 2,  3, 2,  4
 
     |      |      |    |   
 
     |      |      |    |   
 
     i=0    i=1    i=2  Bloquea  
 
     i=0    i=1    i=2  Bloquea  
 
+
Por tanto t=7
+
== Apartado 1 ==
 
 
 
 
Proceso  H0  t  Plazo 
 
-------- --  -- -----
 
PA      0  8  16     
 
PB      0  7  18     
 
 
 
  
  
 +
              B = El proceso realiza una llamada bloqueante.
 +
              + = El proceso se ejecuta en el procesador 1.
 +
              - = El proceso se ejecuta en el procesador 2.
 +
              < = Instante de llegada del proceso.
 +
              > = Instante de finalización del proceso.
 +
              * = El proceso es abortado.
 
    
 
    
                   | 1 |  |  |  |  |  |  |   | 2 | 3 | 4 |  |  |  | 3 | 4 |  |  |           
+
                   |   |  |  |  |  |  |  | 1 | 2 | 3 | 4 |  |  |  | 3 | 4 |  |  |           
   Pa            <---|  |  |  |  |  |  |   |---|---|---B  |  |  P---|---B ABORTAR       
+
   Pa            <   |  |  |  |  |  |  |---|---|---|---B  |  |  P---|---*
 
                   |  |  |  |  |  |  |  |  |  |i=0|  |  |  |  |i=1|  |  |  |       
 
                   |  |  |  |  |  |  |  |  |  |i=0|  |  |  |  |i=1|  |  |  |       
 
                   |  |  |  |  |  |  |  |  |  |  |  |  |  |  |  |  |  |  |       
 
                   |  |  |  |  |  |  |  |  |  |  |  |  |  |  |  |  |  |  |       
                   | 1 | 2 | 3 | 2 | 3 | 2 | 4 |  |  |  |  |  |  |  |  |  |  |      
+
                   | 1 | 2 | 3 | 2 | 3 | 2 | 4 |  |  |  |  |  |  |  |  |  |  |   | 
   Pb            <---|---|---|---|---|---|---B       |  P FIN  |  |  |  |  |  |        
+
   Pb            <---|---|---|---|---|---|---B   |  |  P FIN  |  |  |  |  |  |   |
 
                   |  |  |i=0|  |i=1|  |i=2|  |  |  |  |  |  |  |  |  |  |  |       
 
                   |  |  |i=0|  |i=1|  |i=2|  |  |  |  |  |  |  |  |  |  |  |       
                   |  |  |  |  |  |  |  |  |  |  |  |  |  |  |  |  |  |  |      
+
                   |  |  |  |  |  |  |  |  |  |  |  |  |  |  |  |  |  |  |
                   |  |  |  |  |  |  |  |  |  |  |  |  |  |  |  |  |  |  |      
+
                   |  |  |  |  |  |  |  |  |  |  |  |  |  |  |  |  |  |  |
   Planificador   X   X  |  |  |  |  |  |  X  |  |  X  |  |  X  |  X  |  |    
+
   Planificador  X  |  |  |  |  |  |  X   |   |  |  X  |  |  X  |  X  |  |
                   |  |  |  |  |  |  |  |  |  |  |  |  |  |  |  |  |  |  |      
+
                   |  |  |  |  |  |  |  |  |  |  |  |  |  |  |  |  |  |  |
 
                   |___|___|___|___|___|___|___|___|___|___|___|___|___|___|___|___|___|___|___> t
 
                   |___|___|___|___|___|___|___|___|___|___|___|___|___|___|___|___|___|___|___> t
 
                   0  1  2  3  4  5  6  7  8  9  10  11  12  13  14  15  16  17  18
 
                   0  1  2  3  4  5  6  7  8  9  10  11  12  13  14  15  16  17  18
  
--Creo que esa solución no es correcta (el enunciado dice que los 2 procesos se lanzan a la vez y en este cronograma se lanza P<sub>a</sub> antes que P<sub>b</sub>. Yo he llegado a las siguientes soluciones:
+
Puesto que <math>P_b</math> tiene más prioridad de <math>P_a</math> y ambos se lanzan a la vez, el planificador da paso al proceso <math>P_b</math> en primer lugar. --[[Usuario:Pneira|Pneira]] 12:19 11 nov 2011 (UTC)
 
 
a)
 
  
 +
== Apartado 2 ==
  
               & = El proceso realiza una llamada bloqueante.
+
               B = El proceso pasa a estado bloqueado.
 +
              P = El proceso pasa a estado preparado.
 
               + = El proceso se ejecuta en el procesador 1.
 
               + = El proceso se ejecuta en el procesador 1.
 
               - = El proceso se ejecuta en el procesador 2.
 
               - = El proceso se ejecuta en el procesador 2.
 
               < = Instante de llegada del proceso.
 
               < = Instante de llegada del proceso.
 
               > = Instante de finalización del proceso.
 
               > = Instante de finalización del proceso.
              * = El proceso es abortado.
 
  
             |   |   |   |   |  |  |  | 1 | 2 | 3 | 4 |  |  |  | 3 | 4 |  |  |
+
             | 1 | 2 | 3 | 4 |  |  |  | 3 | 4 |  |  |  | 3 | 5 |  |  |  |  |
     Pa      <   |   |  |  |  |  |  |---|---|---|---|  |  |  |---|---*   |  |
+
     Pa      <+++|+++|+++|+++B   |  |  P+++|+++B   |  |  P+++|+++>   |  |  |  |
 
             |  |  |  |  |  |  |  |  |  |  |  |  |  |  |  |  |  |  |
 
             |  |  |  |  |  |  |  |  |  |  |  |  |  |  |  |  |  |  |
             | 1 | 2 | 3 | 4 | 3 | 2 | 4 |  |  |  |  |  |  |  |  |  |  |
+
             | 1 | 2 | 3 | 2 | 3 | 2 | 4 |  |  |  |  |  |  |  |  |  |  |
     Pb      <---|---|---|---|---|---|---|   |  |  >  |  |  |  |  |  |  |  |
+
     Pb      <---|---|---|---|---|---|---B   |  |  >  |  |  |  |  |  |  |  |
 
             |  |  |  |  |  |  |  |  |  |  |  |  |  |  |  |  |  |  |
 
             |  |  |  |  |  |  |  |  |  |  |  |  |  |  |  |  |  |  |
 
   planif.  |  |  |  |  |  |  |  |  |  |  |  |  |  |  |  |  |  |  |
 
   planif.  |  |  |  |  |  |  |  |  |  |  |  |  |  |  |  |  |  |  |
Línea 65: Línea 58:
 
             0  1  2  3  4  5  6  7  8  9  10  11  12  13  14  15  16  17  18  19  t
 
             0  1  2  3  4  5  6  7  8  9  10  11  12  13  14  15  16  17  18  19  t
  
--Duda: yo he supuesto que aunque el planificador le de paso primero a A al aplicar el criterio y al tener B mayor prioridad de ejecuta B en t=0. --[[Usuario:jesgonbe|jesgonbel]]
+
Recuerda: Que la asignación sea dinámica significa que los procesos '''podrían''' pasar de un procesador a otro si al pasar a estado preparado se encuentran con que el procesador que estaban empleando está ocupado y hay otro procesador libre. --[[Usuario:Pneira|Pneira]] 12:19 11 nov 2011 (UTC)
 +
 
 +
Revisado. --[[Usuario:Pneira|Pneira]] 18:08 23 nov 2011 (UTC)
 +
 
 +
 
 +
= Ejercicio 4 =
 +
+++ Cola 1
 +
--- Cola 2
 +
 
 +
  |  | |  |  |  |  |  |  |  |  |  |  |  |  |  |  |  |  |  |  |  |
 +
Pa<--B  |  |  P  |--B  |  |  P--B  |  |  P--F  |  |  |  |  |  |  |
 +
  |  |  |  |  |  |  |  |  |  |  |  |  |  |  |  |  |  |  |  |  |  |
 +
Pb|  <-----P  |  |  |++B  |  |  P++P  P++F  |  |  |  |  |  |  |  |
 +
  |  |  |  |  |  |  |  |  |  |  |  |  |  |  |  |  |  |  |  |  |  |
 +
Pc|  |  <  ------P  |  P++P++P  |  P++P  |  P++F  |  |  |  |  |  |   
 +
  |  |  |  |  |  |  |  |  |  |  |  |  |  |  |  |  |  |  |  |  |  |
 +
  ---|--|--|--|--|--|--|--|--|--|--|--|--|--|--|--|--|--|--|--|--|>
 +
  0  1  2  3  4  5  6  7  8  9 10  11 12 13 14 15 16 17 18 19 20 21
 +
 
 +
 
 +
Indice de penalización del ejercicio
  
b) Suponiendo que solo se ejecutan procesos en el procesador 2 si esta ocupado el procesador 1
+
          -------------
 +
          | Ipa= 14/4 | 
 +
          | Ipb= 13/5 | 
 +
          | Ipc= 15/6 |
 +
          -------------
 +
--[[Usuario:Carcasdel1 && VicMolVaz|JCR]] 10:38 6 Dic 2016
  
              & = El proceso realiza una llamada bloqueante.
 
              + = El proceso se ejecuta en el procesador 1.
 
              - = El proceso se ejecuta en el procesador 2.
 
              < = Instante de llegada del proceso.
 
              > = Instante de finalización del proceso.
 
  
            | 1 | 2 | 3 | 4 |  |  |  | 3 | 4 |  |  |  | 3 | 5 |  |  |  |  |
+
6.1 [[Concurrencia_de_procesos | Concurrencia de procesos]]
    Pa      <+++|+++|+++|+++&  |  |  |+++|+++|  |  |  |+++|+++|  |  |  |  |
 
            |  |  |  |  |  |  |  |  |  |  |  |  |  |  |  |  |  |  |
 
            | 1 | 2 | 3 | 4 | 3 | 2 | 4 |  |  |  |  |  |  |  |  |  |  |  |
 
    Pb      <---|---|---|---|+++|+++|+++|  |  |  >  |  |  |  |  |  |  |  |
 
            |  |  |  |  |  |  |  |  |  |  |  |  |  |  |  |  |  |  |
 
  planif.  |  |  |  |  |  |  |  |  |  |  |  |  |  |  |  |  |  |  |
 
            |___|___|___|___|___|___|___|___|___|___|___|___|___|___|___|___|___|___|___
 
            0  1  2  3  4  5  6  7  8  9  10  11  12  13  14  15  16  17  18  19  t
 

Revisión actual del 11:34 6 dic 2016

Traza de los procesos

Proceso A

1, 2, 3,   4,       3,   4,       3,   5
      |    |        |    |        |    
      i=0  Bloquea  i=1  Bloquea  i=2  
    

Proceso B

1, 2,   3, 2,   3, 2,   4
   |       |       |    |  
   i=0     i=1     i=2  Bloquea 

Apartado 1

              B = El proceso realiza una llamada bloqueante.
              + = El proceso se ejecuta en el procesador 1.
              - = El proceso se ejecuta en el procesador 2.
              < = Instante de llegada del proceso.
              > = Instante de finalización del proceso.
              * = El proceso es abortado.
  
                 |   |   |   |   |   |   |   | 1 | 2 | 3 | 4 |   |   |   | 3 | 4 |   |   |          
  Pa             <   |   |   |   |   |   |   |---|---|---|---B   |   |   P---|---*
                 |   |   |   |   |   |   |   |   |   |i=0|   |   |   |   |i=1|   |   |   |       
                 |   |   |   |   |   |   |   |   |   |   |   |   |   |   |   |   |   |   |       
                 | 1 | 2 | 3 | 2 | 3 | 2 | 4 |   |   |   |   |   |   |   |   |   |   |   |   
  Pb             <---|---|---|---|---|---|---B   |   |   P FIN   |   |   |   |   |   |   |
                 |   |   |i=0|   |i=1|   |i=2|   |   |   |   |   |   |   |   |   |   |   |       
                 |   |   |   |   |   |   |   |   |   |   |   |   |   |   |   |   |   |   |
                 |   |   |   |   |   |   |   |   |   |   |   |   |   |   |   |   |   |   |
  Planificador   X   |   |   |   |   |   |   X   |   |   |   X   |   |   X   |   X   |   |
                 |   |   |   |   |   |   |   |   |   |   |   |   |   |   |   |   |   |   |
                 |___|___|___|___|___|___|___|___|___|___|___|___|___|___|___|___|___|___|___> t
                 0   1   2   3   4   5   6   7   8   9   10  11  12  13  14  15  16  17  18

Puesto que <math>P_b</math> tiene más prioridad de <math>P_a</math> y ambos se lanzan a la vez, el planificador da paso al proceso <math>P_b</math> en primer lugar. --Pneira 12:19 11 nov 2011 (UTC)

Apartado 2

              B = El proceso pasa a estado bloqueado.
              P = El proceso pasa a estado preparado.
              + = El proceso se ejecuta en el procesador 1.
              - = El proceso se ejecuta en el procesador 2.
              < = Instante de llegada del proceso.
              > = Instante de finalización del proceso.
           | 1 | 2 | 3 | 4 |   |   |   | 3 | 4 |   |   |   | 3 | 5 |   |   |   |   |
   Pa      <+++|+++|+++|+++B   |   |   P+++|+++B   |   |   P+++|+++>   |   |   |   |
           |   |   |   |   |   |   |   |   |   |   |   |   |   |   |   |   |   |   |
           | 1 | 2 | 3 | 2 | 3 | 2 | 4 |   |   |   |   |   |   |   |   |   |   |
   Pb      <---|---|---|---|---|---|---B   |   |   >   |   |   |   |   |   |   |   |
           |   |   |   |   |   |   |   |   |   |   |   |   |   |   |   |   |   |   |
 planif.   |   |   |   |   |   |   |   |   |   |   |   |   |   |   |   |   |   |   |
           |___|___|___|___|___|___|___|___|___|___|___|___|___|___|___|___|___|___|___
           0   1   2   3   4   5   6   7   8   9   10  11  12  13  14  15  16  17  18  19   t

Recuerda: Que la asignación sea dinámica significa que los procesos podrían pasar de un procesador a otro si al pasar a estado preparado se encuentran con que el procesador que estaban empleando está ocupado y hay otro procesador libre. --Pneira 12:19 11 nov 2011 (UTC)

Revisado. --Pneira 18:08 23 nov 2011 (UTC)


Ejercicio 4

+++ Cola 1 --- Cola 2

  |  |	|  |  |  |  |  |  |  |  |  |  |  |  |  |  |  |  |  |  |  |
Pa<--B  |  |  P  |--B  |  |  P--B  |  |  P--F  |  |  |  |  |  |  |
  |  |  |  |  |  |  |  |  |  |  |  |  |  |  |  |  |  |  |  |  |  |
Pb|  <-----P  |  |  |++B  |  |  P++P  P++F  |  |  |  |  |  |  |  |
  |  |  |  |  |  |  |  |  |  |  |  |  |  |  |  |  |  |  |  |  |  |
Pc|  |  <  ------P  |  P++P++P  |  P++P  |  P++F  |  |  |  |  |  |     
  |  |  |  |  |  |  |  |  |  |  |  |  |  |  |  |  |  |  |  |  |  |
  ---|--|--|--|--|--|--|--|--|--|--|--|--|--|--|--|--|--|--|--|--|>
  0  1  2  3  4  5  6  7  8  9 10  11 12 13 14 15 16 17 18 19 20 21


Indice de penalización del ejercicio

          -------------
          | Ipa= 14/4 |  
          | Ipb= 13/5 |  
          | Ipc= 15/6 |
          -------------

--JCR 10:38 6 Dic 2016


6.1 Concurrencia de procesos