1进程通信概念
进程之间相互独立,不能在一个进程中直接访问另外一个进程的资源;
进程通信的目的:
1:数据传输
2:通知事件:一个进程需要向另外一个进程发送消息,通知其发生了某种事件(进程终止的时候要通知父进程)
3:资源共享:多个进程之间共享同样的资源。为了做到这一点,需要内核提供互斥和同步机制。
4:进程控制:
02 进程通信方式
3 匿名管道
管道:字节流、单向;
中间的竖线未管道符;
4 管道特点
1:是内核内存中维护的缓冲器,其存储能力有限,不同操作系统大小不一定相同;
2:管道拥有文件的特质:读操作,写操作,无名管道没有文件实体,有名管道有文件实体,但不存储数据。可以按照操作文件的方式对管道进行操作。
3:一个管道是一个字节流,使用管道时不存在消息和消息边界的概念,从管道读取数据的进程可以读取任意大小的数据块,而不管写入数据大小是多少。
4:传递数据是顺序的
5:管道数据传输是单向的,管道是半双工的
6:从管道读数据是一次性的,数据被读走后直接被抛弃;
7:无名管道只能在具有公共祖先的进程中使用;