LINUX进程间通信程序设计——进程间通讯概述
为什么进程间需要通信?
1、数据传输
一个进程需要将它的数据发送给另一个进程
2、资源共享
多个进程之间共享同样的资源
3、通知时间
一个进程需要向另一个或一组进程发送消息,通知他们发生了某种事件
4、进程控制
有些进程希望完全控制另一个进程的执行(如Debug进程),此时控制进程希望能够拦截另一个进程的所有操作,并能够及时知道它的状态改变
Linux进程间通信(IPC)由以下几部分发展而来:
1、UNIX进程间通信
2、基于System V进程间通信
3、POSIX进程间通信
现在linux使用的进程间通信方式包括:
1、管道(pipe)和有名管道(FIFO)
2、信号(signal)
3、消息队列
4、共享内存
5、信号量
6、套接字(socket)