Xorra

Solo disponible en BuenasTareas
  • Páginas : 3 (624 palabras )
  • Descarga(s) : 0
  • Publicado : 29 de marzo de 2011
Leer documento completo
Vista previa del texto
INSTITUTO POLITECNICO NACIONAL
ESCOM

Reporte Práctica 1.
Comunicación: Interprocesos dentro de una sola PC
Método de Tuberías

Integrantes:
Landero Reyes Mauricio
Núñez Rodríguez LuisÁngel
Ortiz de la Cruz Roberto

Sistemas Operativos II

Jiménez Benítez José Alfredo

Grupo: 5CV2

Código
El programa consiste en que existe un proceso padre el cual crea un arreglo de100 x 100 que llena con números reales aleatorios en el rango de 1.0-100.0, posteriormente realiza la creación de una tubería para poder comunicarse con sus procesos hijos (crea 10 hijos). Cada hijoaccede a 10 renglones –diferentes- del arreglo creado por el padre, calcula el promedio y la desviación estándar de los valores que tomo y regresa los resultados al proceso padre por medio de latubería, el proceso padre recibe los resultados de cada hijo y los muestra.

#include <stdlib.h>
#include <stdio.h>
#include <sys/types.h>
#include <math.h>main(){
float mat[100][100];
int fd[2], pid, num,i=0,j=0,k=0,aux,x,y,a,b;
float varianza, varianzax,promedio,suma,result,result2;
char buf[1024];
char buf2[1024];
srand(time(NULL));/*-----------Se llena la matriz con números aleatorios----------*/

for(i=0;i<100;i++){
for(j=0;j<100;j++){
num=1+rand()%(100-1);mat[i][j]=num;
}
}

/*--------------Se imprime la matriz------------------*/
for(i=0;i<100;i++){
for(j=0;j<100;j++){
printf("\t%f\t",mat[i][j]);
}printf("\n");
}

i=0;
/*---------------------------Creacion de la tubería----------------------------------*/

if(pipe(fd)<0){
perror("Creando la tuberia");
exit(-1);}


for(k=0;k<10;k++){ /*-------------------Se crean 10 hijos con 10 filas cada uno---------------------------*/
if((pid=fork())==0){ /*---------Procesos hijo-----------*/...
tracking img