日期:2014-05-16  浏览次数:20760 次

为什么无名管道只能在具有亲缘关系的进程之间进行通信?
如题!
创建无名管道的时候可获得 a[0],a[1],也就是两个用来读和写得文件描述符,那为什么不能让两个没有关系的进程进行读和写呢?我不能理解阿,

------解决方案--------------------
自己创建的管道在别的进程中并不可见

就像你调用open()自己打开的一个文件,返回一个文件描述符fd
那么别的进程能使用这个fd 来读文件吗??
------解决方案--------------------
文件描述符在形式上是一个非负整数。实际上,它是一个索引值,指向内核为每一个进程所维护的该进程打开文件的记录表。
------解决方案--------------------
进程间用FIFO。