[Previo por Fecha] [Siguiente por Fecha] [Previo por Hilo] [Siguiente por Hilo]
[Hilos de Discusión] [Fecha] [Tema] [Autor]Jhon Jairo twisted the bytes to say: Jhon> hi, listas... Jhon> acabo de bajar el manual del programador de Linux y tengo ciertas Jhon> inquietudes con la programación de las pipes... Jhon> 1. Al crear la tuberia se crea un proceso hijo para comunicarse, la Jhon> pregunta es: cuando comienza a ejecutarse el proceso hijo?, cuando el Jhon> padre cierra el extremo de escritura de la cañeria? o cuando el padre Jhon> empieza a leer en la cañeria? Jhon> estube poniendo mensajes para ver que es lo que hace y me parece que el Jhon> hijo empieza a ejecutarse cuando el padre empieza a leer en la Jhon> cañeria... Jhon> 2. Que significar que childpid sea igual a cero? o diferente de cero? Jhon> 3. Yo he programado en C bajo DOS y Windows, ahora quiero empezar bajo Jhon> UNIX para realizar mi proyecto de grado (eso espero), ¿No existe el Jhon> posicionamiento del cursor? ejemplo: gotoxy(x,y) Jhon> programa: Jhon> pipe.c Jhon> #include<stdio.h> Jhon> #include<unistd.h> Jhon> #include<sys/types.h> Jhon> int main(void) Jhon> { int fd[2], nbytes; pid_t childpid; char string[]="Hola a todos!\n"; char readbuffer[80]; pipe(fd); printf("Antes de Crear Hijo\n"); if((childpid=fork())==-1) { perror("fork"); exit(1); } printf("Despues de crear hijo\n"); printf("antes del IF:%d\n",childpid); if(childpid==0) { printf("entre childpid==0\n"); close(fd[0]); write(fd[1],string, strlen(string)); printf("Antes de exit childpid:%d\n",childpid); exit(0); } else { printf("Entre en el else\n"); close(fd[1]); printf("dentro del Else:%d\n",childpid); nbytes=read(fd[0], readbuffer, sizeof(readbuffer)); printf("Cerre la tuberia"); printf("Recibido string: %s\n", readbuffer); } Jhon> } -- Daniel M. German "That the only purpose for which power can be rightfully exercised over any member of a civilized community, against his will, is to prevent harm to others. His own good, either physical John Stuart Mill -> or moral, is not a sufficient warrant." http://csgwww.uwaterloo.ca/~dmg/home.html dmg en csg uwaterloo ca