进程间通信总结(一)

了解进程间通信(IPC,Internet process connect),我们要搞明白进程间为什么要通信,会遇到哪几种情况,针对这些情况我们分别怎么来解决。下面我们来说下进程间通信的目的,然后针对这些问题进行解决。


1,数据传输:一个进程向另一个进程传输数据。
2,资源共享:多个进程共享一段资源。
3,通知事件:一个进程向其它进程发送消息,通知某种事件(是停止,是终止)。
4,进程控制:一个进程完全控制另一个进程,例如编译器的调试功能。
通常我们就是为了解决这几个进程间问题,解决这些问题有哪些办法呢?



管道:无名管道(pipe) 有名管道(fifo)

管道只能半双工通信,即某一时刻只能单向传输。要实现父子进程双方互动通信,需要定义两个管道。管道有固定大小的缓冲区。管道又分为有名管道和无名管道(下篇文章介绍)。


System V进程间通信:共享内存(share memory)、消息队列(message queue)信号量(semaphore)
信号量:用于管理对资源的访问。
共享内存:用于在程序之间高效的共享数据 。
消息队列:在程序之间传递数据的一种简单方法。


套接字(socket)

用于不同机器间的进程通信,跨网络通信。




之后会分多次详细介绍这三种通信。
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值