1,进程间通信 (IPC ) Inter-Process Communication 比较好理解概念的就是进程间通信就是在不同进程之间传播或交换信息。 2,linux下IPC机制的分类:管道、信号、共享内存、消息队列、信号量、套接字 3,这篇主要说说管道:本质是文件,其他理论什么的网上已经有一大堆了 ...
分类:
系统相关 时间:
2017-12-02 00:41:56
阅读次数:
316
https://www.ibm.com/developerworks/cn/linux/l-ipc/ linux下进程间通信的几种主要手段简介: ...
分类:
系统相关 时间:
2017-11-26 16:50:28
阅读次数:
170
linux进程间通信(IPC)机制 1.共享内存 共享内存是在多个进程之间共享内存区域的一种进程间的通信方式,由IPC为进程创建的一个特殊地址范围,它将出现在该进程的地址空间(这里的地址空间具体是哪个地方?)中。其他进程可以将同一段共享内存连接到自己的地址空间中。所有进程都可以访问共享内存中的地址, ...
分类:
系统相关 时间:
2017-11-25 23:46:35
阅读次数:
439
一、信号量 信号量是一个用来描述临界资源的资源个数的计数器。 信号量的本质是一种数据操作锁,它本身不具有数据交换的功能,而是通过控制其他的通信资源(文件、外部设备等)来实现进程间通信, 他本身更只是一种外部资源的标识。信号量在此过程中负责数据操作的同步、互斥等功能。 当请求 一个使用信号量来表示 的 ...
分类:
系统相关 时间:
2017-10-17 18:58:19
阅读次数:
146
一、消息队列 消息队列提供了一种从一个进程向另一个进程发送一个数据块的方法。 每个数据块都被认为含有一个类型,接收进程可以独立地接收含有不同类型的数据结构。我们可以通过发送消息来避免命名管道的同步和阻塞问题。 但是消息队列与命名管道一样,每个数据块都有一个最大长度的限制。 消息队列是系统内核地址空间 ...
分类:
系统相关 时间:
2017-10-17 15:05:35
阅读次数:
248
一、什么是共享内存 共享内存就是允许两个不相关的进程访问同一个逻辑内存。共享内存是在两个正在运行的进程之间共享和传递数据的一种非常有效的方式。不同进程之间共享的内存通常安排为同一段物理内存。进程可以将同一段共享内存连接到它们自己的地址空间中,所有进程都可以访问共享内存中的地址,就好像它们是由用C语言 ...
分类:
系统相关 时间:
2017-10-16 22:13:10
阅读次数:
214
一、 信号是在软件层次上对中断机制的一种模拟,在原理上,一个进程收到一个信号与处理器收到一个中断请求可以说是一样的。信号是异步的,一个进程不必通过任何操作来等待信号的到达,事实上,进程也不知道信号到底什么时候到达。 二、信号的种类 信号的名称是在头文件signal.h中定义的,信号都以SIG开头 命 ...
分类:
系统相关 时间:
2017-10-16 19:25:08
阅读次数:
163
整理自网络 Unix IPC包括:管道(pipe)、命名管道(FIFO)与信号(Signal) 管道(pipe) 管道可用于具有亲缘关系进程间的通信,有名管道克服了管道没有名字的限制,因此,除具有管道所具有的功能外,它还允许无亲缘关系进程间的通信; 实现机制: 管道是由内核管理的一个缓冲区,相当于我 ...
分类:
系统相关 时间:
2017-09-22 19:11:10
阅读次数:
326
管道概述及相关API应用 1.1 管道相关的关键概念 管道是Linux支持的最初Unix IPC形式之一,具有以下特点: 管道是半双工的,数据只能向一个方向流动;需要双方通信时,需要建立起两个管道; 只能用于父子进程或者兄弟进程之间(具有亲缘关系的进程); 单独构成一种独立的文件系统:管道对于管道两 ...
分类:
系统相关 时间:
2017-09-05 17:52:01
阅读次数:
228
一、共享内存介绍 共享内存是三个IPC(Inter-Process Communication)机制中的一个。 它允许两个不相关的进程访问同一个逻辑内存。 共享内存是在两个正在进行的进程之间传递数据的一种非常有效的方式。 大多数的共享内存的实现, 都把由不同进程之间共享的内存安排为同一段物理内存。 ...
分类:
系统相关 时间:
2017-09-05 17:46:49
阅读次数:
181