Diferencia entre revisiones de «Práctica Programación Concurrente (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: ==  


== Ejercicio 02: ==  
== Ejercicio 02:(*) ==  


a.
a.
Línea 72: Línea 72:




== Ejercicio 03: ==  
== Ejercicio 03:(*) ==  


Que es indivisible?
Que es indivisible?
Línea 78: Línea 78:




== Ejercicio 04: ==  
== Ejercicio 04:(*) ==  


a. Me parece que es el tipo de grafos que no pueden ser representados con parbegin/parend. PREGUNTAR
a. Me parece que es el tipo de grafos que no pueden ser representados con parbegin/parend. PREGUNTAR
Línea 114: Línea 114:




== Ejercicio 12: ==
== Ejercicio 12:(*) ==


Porque como cambian el valor del semaforo y despues lo evalua, al haber concurrencia se pueden quedar en  
Porque como cambian el valor del semaforo y despues lo evalua, al haber concurrencia se pueden quedar en  
Línea 127: Línea 127:




== Ejercicio 14: ==
== Ejercicio 14:(*) ==


Monitor ej14
Monitor ej14
Línea 169: Línea 169:




== Ejercicio 15: ==
== Ejercicio 15:(*) ==


a.
a.
Línea 211: Línea 211:




== Ejercicio 16: ==
== Ejercicio 16:(*) ==


X = 1
X = 1
Línea 263: Línea 263:




== Ejercicio 19: ==  
== Ejercicio 19:(*) ==  


Muy largo como para leerlo
Muy largo como para leerlo
Línea 273: Línea 273:




== Ejercicio 21: ==
== Ejercicio 21:(*) ==


Ni idea que quieren
Ni idea que quieren
Línea 279: Línea 279:




== Ejercicio 22: ==
== Ejercicio 22:(*) ==


Estoy harto de esos ejercicios que te meten enunciados al pedo!!
Estoy harto de esos ejercicios que te meten enunciados al pedo!!
Línea 285: Línea 285:




== Ejercicio 23: ==
== Ejercicio 23:(*) ==


Roberto hablo de unas reglas en clase... pero no las encuentro
Roberto hablo de unas reglas en clase... pero no las encuentro

Revisión del 01:16 31 oct 2006

Ejercicio 01:

Ejercicio 02:(*)

a. count2 = 2

count = 3

s1

fork L2

fork L3

fork L4

jump Sigo

L2:

s2

jump Sigo2

L3:

s3

Sigo2:

join count2

jump Sigo

L4:

s4

Sigo:

join count


b.

s1

parbegin

begin

parbegin

s2

s3

parend

s5

end

s4

parend

s6


Ejercicio 03:(*)

Que es indivisible?


Ejercicio 04:(*)

a. Me parece que es el tipo de grafos que no pueden ser representados con parbegin/parend. PREGUNTAR


Ejercicio 05:

Ejercicio 06:

Ejercicio 07:

Ejercicio 08:

Ejercicio 09:

Ejercicio 10:

Ejercicio 11:

Ejercicio 12:(*)

Porque como cambian el valor del semaforo y despues lo evalua, al haber concurrencia se pueden quedar en WAIT dos ejecuciones de P. Ver Set-And-Test


Ejercicio 13:

Ejercicio 14:(*)

Monitor ej14

var:

bandera : condicion


procedure P(x)

begin

x = x-1

if (x<0) then

Wait(bandera)

endif

end


procedure V(x)

begin

x = x+1

if (x<=0) then

Signal(Bandera)

endif

end


Ejercicio 15:(*)

a.

E = 1; S = 0


procedure Productor

begin

P(E)

....

V(S)

end


procedure Consumidor

begin

P(S)

....

V(E)

end


b.

Esta el mismo ejercicio en la pagina 19 del capitulo 19.


Ejercicio 16:(*)

X = 1

procedure Leer

begin

//leo el archivo

end


procedure Escribir

begin

P(X)

//escribo el archivo

V(X)

end


begin Prog-Principal(operacion)

if (operacion == "Leer) then

Leer

else

Escribir

endif

end


Ejercicio 17:

Ejercicio 18:

Ejercicio 19:(*)

Muy largo como para leerlo


Ejercicio 20:

Ejercicio 21:(*)

Ni idea que quieren


Ejercicio 22:(*)

Estoy harto de esos ejercicios que te meten enunciados al pedo!!


Ejercicio 23:(*)

Roberto hablo de unas reglas en clase... pero no las encuentro