进程间通信(InterProcess Conmunication)

IPC的目的: 

                      1;进程间的数据传输

                      2:进程件共享数据

                      3:通知事件
                      4: 进程间的资源共享
                      5:进程的控制

 

 

 IPC的几种通信机制:

                     1:管道——>是一种单向的,先进先出的(FIFO),无结构,固定大小的数据流。

                                            当系统调用PIPE 时,生成两个管道的同时,也返回了两个描述符,

                                            一个用来读管道,一个用来写管道。管道是通过两个FILE 数据结构来实现的。

                                           linux必须同步对管道的访问,也就是说必须先写后读。当要向管道里写东西

                                           或着读东西必须要用标准的write库函数。

 

                      2:System V IPC中的三种机制。

                              (1):消息队列。顾名思义就是一个队列,支部过其中的每个元素是指向msqid_ds数据结构,

                                             msqid_ds结构中包含了一个ipc_perm结构和一个指向消息的的指针。还有两个等待队列,

                                            一个是写等待队列,一个是读等待队列。对于ipc_perm结构,可以参考

                                            http://blog.csdn.net/yuzhoudiwang/archive/2009/07/24/4377064.aspx

                               (2):信号量。就是两个具有正数字值的对象。

                               (3):共享内存。共享内存就是把一块内存的空间地址,映射到多个进程的地址空间去,以便多个进程都能够

                                          访问这块内存。

  • 0
    点赞
  • 0
    收藏
    觉得还不错? 一键收藏
  • 0
    评论
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值