Diferencia entre revisiones de «Práctica Semáforos (Sistemas Operativos)»
De Cuba-Wiki
Línea 59: | Línea 59: | ||
==Ejercicio 05[*]:== | ==Ejercicio 05[*]:== | ||
<br>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) | <br>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) | ||
<br>b) Se podrian invertir los primeros dos P's | <br>b) Se podrian invertir los primeros dos P's, tanto en Y como en Z | ||
<br>c) Me parece que anda bien (por algo lo di como solucion del b :P) | <br>c) Me parece que anda bien (por algo lo di como solucion del b :P) | ||
<br>d) | <br>d) |
Revisión del 20:31 6 abr 2007
Ejercicio 01[*]:
a)
A B C P( A ) P( B ) P( C ) ... ... ... V( B ) V( C ) V( A ) Inicio A = n > 0 B = 0 C = 0
b)
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)
A B C P( A ) P( A ) P( C ) ... ... ... V( C ) V( C ) V( A ) Inicio A = n > 0 C = 0
Ejercicio 02:
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 0 1 -1 1 B 1 0 0 0 B B 1 -1 0 0 B 1 -1 0 -1 B/C 0 0 0 -1 B B/C 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 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:
Ejercicio 10:
Ejercicio 11[*]:
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[*]:
A B C P(exc) P(Y) P(exc) P(X) P(S) P(Z) P(X) P(Z) V(exc) P(S) P(S) ... ... ... V(S) V(X) V(X) V(S) V(Z) V(X) V(Y) V(Y) Inicio exc=1 X=2 Y=2 Z=-1 S=0
Ejercicio 13[*]:
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=0 b=2