Diferencia entre revisiones de «Práctica Semáforos (Sistemas Operativos)»
De Cuba-Wiki
Sin resumen de edición |
Sin resumen de edición |
||
Línea 1: | Línea 1: | ||
==Ejercicio 01[*]:== | ==Ejercicio 01[*]:== | ||
a | <br>a) | ||
<pre> | |||
A B C | A B C | ||
P( A ) P( B ) P( C ) | P( A ) P( B ) P( C ) | ||
Línea 7: | Línea 8: | ||
Inicio | Inicio | ||
A = n > 0 | |||
A=n > 0 | |||
B = 0 | B = 0 | ||
C = 0 | C = 0 | ||
</pre> | |||
b | <br>b) | ||
<pre> | |||
A B C | A B C | ||
P( A ) P( B ) P( C ) | P( A ) P( B ) P( C ) | ||
P( msg ) P( msg ) | |||
... ... ... | ... ... ... | ||
V( A ) V( A ) | |||
V( msg ) V( C ) V( B ) | V( msg ) V( C ) V( B ) | ||
Inicio | Inicio | ||
A = n > 0 | |||
A=n > 0 | |||
msg = 0 | msg = 0 | ||
B = 1 | B = 1 | ||
C = 0 | C = 0 | ||
</pre> | |||
c | <br>c) | ||
<pre> | |||
A B C | A B C | ||
P( A ) P( A ) P( C ) | P( A ) P( A ) P( C ) | ||
Línea 34: | Línea 37: | ||
Inicio | Inicio | ||
A = n > 0 | |||
A=n > 0 | |||
C = 0 | C = 0 | ||
</pre> | |||
==Ejercicio 02:== | ==Ejercicio 02:== | ||
==Ejercicio 03:== | ==Ejercicio 03:== | ||
<br>a) | |||
<br>b) | |||
==Ejercicio 04:== | ==Ejercicio 04:== | ||
==Ejercicio 05[*]:== | ==Ejercicio 05[*]:== | ||
a | <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) | ||
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 de Y y Z | ||
<br>c) Me parece que anda bien (por algo lo di como solucion del b :P) | |||
b | <br>d) | ||
Se podrian invertir los primeros dos P's de Y y Z | |||
c | |||
Me parece que anda bien (por algo lo di como solucion del b :P) | |||
==Ejercicio 06[*]:== | ==Ejercicio 06[*]:== | ||
<br>a) | |||
<br>b) | |||
==Ejercicio 07[*]:== | ==Ejercicio 07[*]:== | ||
Línea 63: | Línea 65: | ||
Es muy pedorra esta solucion???? | Es muy pedorra esta solucion???? | ||
<pre> | |||
A B C | A B C | ||
P( A ) P( msg ) P( msg ) | P( A ) P( msg ) P( msg ) | ||
Línea 71: | Línea 74: | ||
Inicio | Inicio | ||
A=2 | A=2 | ||
msg=0 | msg=0 | ||
</pre> | |||
==Ejercicio 12[*]:== | ==Ejercicio 12[*]:== | ||
<pre> | |||
A B C | A B C | ||
P( exc ) | P( exc ) | ||
Línea 86: | Línea 90: | ||
Inicio | Inicio | ||
A=1 | A=1 | ||
B=0 | B=0 | ||
C=0 | C=0 | ||
</pre> | |||
==Ejercicio 13[*]:== | ==Ejercicio 13[*]:== |
Revisión del 02:47 21 mar 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 msg = 0 B = 1 C = 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:
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 de Y y Z
c) Me parece que anda bien (por algo lo di como solucion del b :P)
d)
Ejercicio 06[*]:
a)
b)
Ejercicio 07[*]:
MMMM. a que apunta este ejercicio??
Ejercicio 08:
Ejercicio 09:
Ejercicio 10:
Ejercicio 11[*]:
Es muy pedorra esta solucion????
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( A ) P( B ) P( C ) P( C ) V( exc ) ... ... ... V( B ) V( C ) V( A ) V( B) Inicio A=1 B=0 C=0