Práctica Semáforos (Sistemas Operativos)

De Cuba-Wiki
Revisión del 04:08 7 abr 2008 de 200.89.171.77 (discusión) (→‎Ejercicio 13[*]:)
(difs.) ← Revisión anterior | Revisión actual (difs.) | Revisión siguiente → (difs.)

Plantilla:Back

Ejercicio 01[*]:


a)ABCABC..

A       B       C  
P( A )  P( B )  P( C )  
...     ...     ...  
V( B )  V( C )  V( A )  

Inicio
A = n > 0  
B = 0  
C = 0


b)ABACABAC..

A        B        C  
P( A )   P( B )   P( C )  
         P( msg ) P( msg )  
...      ...      ...  
         V( A )   V( A )  
V( msg ) V( C )   V( B )  

Inicio
A = n > 0  
B = 1  
C = 0  
msg = 0  


c)(AoB)C(AoB)C..

A       B       C  
P( A )  P( A )  P( C )  
...     ...     ...  
V( C )  V( C )  V( A )  

Inicio
A = n > 0  
C = 0  

Ejercicio 02:

A(BoC)A(BoC)..

A       B       C  
P( X )  P( Y )  P( Y )  
...     ...     ...  
V( Y )  V( X )  V( X )  

Inicio
X = 1
Y = 0  

Ejercicio 03:


a)
b)

Ejercicio 04:

Ejercicio 05[*]:


a) Hay un deadlock, porque Z espera que se incremente B, y B nunca se va a incrementar, porque eso lo hace Y (que no se va a ejecutar)
b) Se podrian invertir los primeros dos P's, tanto en Y como en Z
c) Me parece que anda bien (por algo lo di como solucion del b :P)
d)

Ejercicio 06[*]:


a)

 S  R  B  C   Signal  Wait
 1  0  0  1     
 0  1  0  1     R           X
 0  1 -1  1            B    Z
 1  0  0  0     B      B    Y
 1 -1  0  0            B    Y
 1 -1  0 -1           B/C   X
 0  0  0 -1     B     B/C   X
 1  0  0  0     C      C
 0 -1  0  0            C
-1 -1  0  0           C/S

??
b)

Ejercicio 07[*]:

Al ejecutarse V(T) se produce un signal de T, entonces el PT selecciona un proceso que requiere T que se encuentra en la cola de bloqueados y lo coloca en la de listos. Luego se ejecuta V(S) y sucede lo mismo y luego V(R). En la ejecucion de V(R) no se produce ningun signal

Ejercicio 08:

Ejercicio 09:

YXZQYXZQ...

Ejercicio 10:

Ejercicio 11[*]:

La secuencia equivale a A(BoC)(BoC)A(BoC)(BoC)..

A         B         C  
P( A )    P( msg )  P( msg )  
P( A ) 
...       ...       ...  
V( msg )  V( A )    V( A )  
V( msg )    

Inicio
A=2  
msg=0  

Ejercicio 12[*]:

ABB AC ABB AC..

A        B      C  
P(X)     P(Y)   P(Z)  
P(X)     P(S)   P(Z)
...      ...    ...
V(Y)     V(X)   P(Y)
V(Y)            P(Y)
V(Z)            V(X)
                V(X)
                V(S)
                V(S)

Inicio
X=2  
Y=0
Z=0
S=2

Ejercicio 13[*]:

ABBCBBABBCBB..

A      B      C  
P(X)   P(b)   P(Y)   
P(s)          P(s)
P(s)          P(s)
...    ...    ...  
V(Y)   V(s)   V(X)   
V(b)          V(b)   
V(b)          V(b)

Inicio
X=1  
Y=0
s=2
b=0