1.管道通信
linux管道主要包括俩种:无名管道和有名管道(FIFO)
int pipe(fd[2])
fd[2]是存放管道的两个文件描述符的数组,它只能应用与有血缘关系的两个进程,通信原理是:父进程用这个函数创建一个管道,建好后,此时已经给参数fd数组赋值了,所赋的值就是管道两端的两个文件描述符,一个读管道,一个写管道,但是这样实现的仅是一个进程读写,但是,创建的子进程,因为拷贝了父进程的地址空间和资源,因此,子进程拥有跟父进程同意的管道,因此,适当的关闭两个文件描述符,就可以轻松实现进程的通信了。
由于以上管道进局限于家属之间通信,因此,聪明的程序员又构造了FIFO管道机制,顾名思义,这个管道严格遵循先进先出的规则,
int mkfifo(const char *filename,/*要创建的管道*/
mode_t mode)/*管道创建的类型*/
FIFO管道相当于一个文件,