]> git.llucax.com Git - z.facultad/75.74/practicos.git/commitdiff
Mejora/actualiza lanzadores (agregando opcion para elegir cantidad de
authorLeandro Lucarella <llucax@gmail.com>
Mon, 24 Apr 2006 04:41:37 +0000 (04:41 +0000)
committerLeandro Lucarella <llucax@gmail.com>
Mon, 24 Apr 2006 04:41:37 +0000 (04:41 +0000)
iteraciones) y actualiza README.

practicas/practica2/P02e1101.sh
practicas/practica2/P02e1201.sh
practicas/practica2/P02e2111.sh
practicas/practica2/README

index c5d891e41b2136d3393b9c3c500120b38d2b28a6..297884103a159f7bd61cc6ca9412daec125907db 100755 (executable)
@@ -1,12 +1,13 @@
 #!/bin/sh
 
 # Lanzo procesos
-./P02e1101 0 &
+./P02e1101 0 $1 &
+p0=$!
+./P02e1101 1 $1 &
 p1=$!
-./P02e1101 1 &
 
 # Espero que terminen
-wait $!
+wait $p0
 wait $p1
 
 # Limpio IPC
index 4d454970b0b5c44453d8bee5c7d65957e19ee62b..24015c69207a850e939b03fc5f2a5a59c7826a32 100755 (executable)
@@ -1,23 +1,23 @@
 #!/bin/sh
 
 # Lanzo procesos
-./P02e1201 0 &
+./P02e1201 0 $1 &
+p0=$!
+./P02e1201 1 $1 &
 p1=$!
-./P02e1201 1 &
+./P02e1201 2 $1 &
 p2=$!
-./P02e1201 2 &
+./P02e1201 3 $1 &
 p3=$!
-./P02e1201 3 &
+./P02e1201 4 $1 &
 p4=$!
-./P02e1201 4 &
-p5=$!
 
 # Espero que terminen
+wait $p0
 wait $p1
 wait $p2
 wait $p3
 wait $p4
-wait $p5
 
 # Limpio IPC
 ipcrm -M 0x77891120
index 82b1f0cb6fbcab90fc04e1a86128a476739f8e24..a33e5a48e6e5c52b6e9763f313929580b7779fa4 100755 (executable)
@@ -1,14 +1,14 @@
 #!/bin/sh
 
 # Lanzo procesos
-./P02e2111 0 &
+./P02e2111 0 $1 &
+p0=$!
+./P02e2111 1 $1 &
 p1=$!
-./P02e2111 1 &
-p2=$!
 
 # Espero que terminen
+wait $p0
 wait $p1
-wait $p2
 
 # Limpio IPC
 ipcrm -M 0x77891220
index 8f44af6725a591f5a758e58f8f3054a504ae4f22..51a16a9be86bf7cc66949c71aaac3f1dded418cc 100644 (file)
@@ -6,6 +6,9 @@ $ ./P02e1101 0 & ./P02e1101 1 &
 (el primer parametro es el numero de proceso, debe ser 0 o 1, se puede pasar un
 segundo parametro opcional con la cantidad de iteraciones a realizar)
 
+Se provee un script lanzador: ./P02e1101.sh
+(recibe un parámetro opcional con la cantidad de iteraciones)
+
 P02e1201
 ========
 Ejercicio 1.2. Muy similar al anterior pero se puede correr con N procesos. Por
@@ -13,6 +16,10 @@ ejemplo:
 $ ./P02e1101 0 & ./P02e1101 1 & ./P02e1101 2 & ./P02e1101 3 & ./P02e1101 4
 (tambien acepta un parametro extra para la cantidad de iteraciones)
 
+Se provee un script lanzador: ./P02e1201.sh
+(recibe un parámetro opcional con la cantidad de iteraciones, este lanzador
+corre 5 instancias)
+
 P02e2111
 ========
 Ejercicio 2.1.1. Productor-consumidor usando semaforos binarios y shared memory.
@@ -25,4 +32,33 @@ productor, 1 es consumidor)
 Otra forma de probar con varios consumidores es:
 $ ./P02e2111 0 20 & ./P02e2111 1 12 & ./P02e2111 1 8 &
 
+Se provee un script lanzador: ./P02e1201.sh
+(recibe un parámetro opcional con la cantidad de iteraciones, este lanzador
+corre 1 productor y 1 consumidor)
+
+P02e2121
+========
+Ejercicio 2.1.2. Productor-consumidor usando semaforos binarios y shared memory
+pero con 3 productores que producen parcialmente y 2 consumidores que consumen
+todo. Debe correr primero el primer productor porque inicializa las estructuras
+compartidas.
+Por ejemplo:
+$ ./P02e2121 0 & ./P02e2121 1 & ./P02e2121 2 & ./P02e2121 3 & ./P02e2121 4 &
+(el proceso 0 a 2 son productores, el 3 y 4 consumidores).
+
+Se provee un script lanzador: ./P02e2111.sh
+(recibe un parámetro opcional con la cantidad de iteraciones)
+
+P02e2211
+========
+Ejercicio 2.2.1. Productor-consumidor usando colas de mensajes.
+Debe coincidir la cantidad de cosas a producir y a consumir, y puede haber solo
+un productor (que debe correr primero) y un solo consumidor.
+Por ejemplo:
+$ ./P02e2211 0 & ./P02e2211 1 &
+(tambien acepta un parametro extra para la cantidad de iteraciones, 0 es
+productor, 1 es consumidor)
+
+Se provee un script lanzador: ./P02e2111.sh
+(recibe un parámetro opcional con la cantidad de iteraciones)