1. FIFO: FIFO也被成为命名管道,可以用于任意进程间通信,而普通无名管道只能用于有共同祖先的进行直接通信; 命名管道也是半双工的,open管道的时候不要以读写方式打开,这种操作是未定义的; 2. FIFO创建: FIFO是一种文件类型,mode参数与open函数中的mode参数相同,并且一
分类:
系统相关 时间:
2016-03-20 11:51:12
阅读次数:
261
1. 管道局限性: (1) 半双工; (2) 只能在具有公共祖先的进程之间使用; 2. 管道创建函数: 经由filedes返回两个文件描述符:filedes[0]为读端,filedes[1]为写端; 3. 惯用方式: 由于单个进程中的管道并没有任何用户,所以,通常调用pipe的进程会接着调用fork
分类:
系统相关 时间:
2016-03-19 22:58:17
阅读次数:
308
版权声明:本文为博主原创文章,未经博主允许不得转载。 简介 共享内存(shared memory)是最简单的Linux进程间通信方式之一。使用共享内存,不同进程可以对同一块内存进行读写。由于所有进程对共享内存的访问就和访问自己的内存空间一样,而不需要进行额外系统调用或内核操作,同时还避免了多余的内存
分类:
系统相关 时间:
2016-03-18 19:45:36
阅读次数:
295
进程间通讯———管道 Linux 进程间通信-管道 进程是一个独立的资源分配单位,不同进程之间的资源是相互独立的,没有关联,不能在一个进程中直接访问另一个进程中的资源。但是,进程不是孤立的,不同的进程之间需要信息的交换以及状态的传递,因此需要进程间数据传递、同步与异步的机制。 此篇博文记录管道。
分类:
系统相关 时间:
2016-03-14 12:11:08
阅读次数:
179
一、什么是共享内存 顾名思义,共享内存就是允许两个不相关的进程访问同一个逻辑内存。共享内存是在两个正在运行的进程之间共享和传递数据的一种非常有效的方式。不同进程之间共享的内存通常安排为同一段物理内存。进程可以将同一段共享内存连接到它们自己的地址空间中,所有进程都可以访问共享内存中的地址,就好像它们是
分类:
系统相关 时间:
2016-02-20 14:43:58
阅读次数:
283
进程间通信的机制——信号量。注意请不要把它与之前所说的信号混淆起来。信号与信号量是不同的两种事物。有关信号的很多其它内容。能够阅读我的还有一篇文章:Linux进程间通信——使用信号。以下就进入信号量的解说。 一、什么是信号量 为了防止出现因多个程序同一时候訪问一个共享资源而引发的一系列问题。我们须要
分类:
系统相关 时间:
2016-02-17 20:44:50
阅读次数:
265
下面来说说如何用不用消息队列来进行进程间的通信,消息队列与命名管道有很多相似之处。有关命名管道的更多内容可以参阅我的另一篇文章:Linux进程间通信——使用命名管道 一、什么是消息队列 消息队列提供了一种从一个进程向另一个进程发送一个数据块的方法。 每个数据块都被认为含有一个类型,接收进程可以独立地
分类:
系统相关 时间:
2016-02-01 17:40:34
阅读次数:
209
马上过年了,心里万般滋味。。。 一,消息队列 1,概念:“消息队列”是在消息的传输过程中保存消息的容器 2,消息队列就是一个消息的链表。可以把消息看作一个记录,具有特定的格式以及特定的优先级。 对消息队列有写权限的进程可以向消息队列中按照一定的规则添加新消息; 对消息队列有读权限的进程则可以从消息队
分类:
系统相关 时间:
2016-01-31 13:27:15
阅读次数:
229
一,共享内存 内核管理一片物理内存,允许不同的进程同时映射,多个进程可以映射同一块内存,被多个进程同时映射的物理内存,即共享内存。映射物理内存叫挂接,用完以后解除映射叫脱接。1,共享内存的特点: 优点:是最快的IPC。 缺点:要编程者自己实现对共享内存互斥访问。如何实现?2,编程模型:具体函数的.....
分类:
系统相关 时间:
2016-01-13 21:58:14
阅读次数:
316
1,进程间通信 (IPC ) Inter-Process Communication 比较好理解概念的就是进程间通信就是在不同进程之间传播或交换信息。2,linux下IPC机制的分类:管道、信号、共享内存、消息队列、信号量、套接字3,这篇主要说说管道:本质是文件,其他理论什么的网上已经有一大堆了,....
分类:
系统相关 时间:
2016-01-12 22:44:14
阅读次数:
231