进程之间有8种通信方式

1无名管道( pipe ):管道是一种半双工的通信方式,数据只能单向流动,而且只能在具有亲缘关系的进程间使用。进程的亲缘关系通常是指父子进程关系。
2.高级管道(popen):将另一个程序当做一个新的进程在当前程序进程中启动,则它算是当前程序的子进程,这种方式我们成为高级管道方式。
3 有名管道 (named pipe) : 有名管道也是半双工的通信方式,但是它允许无亲缘关系进程间的通信。
4信号量( semophore ) : 信号量是一个计数器,可以用来控制多个进程对共享资源的访问。它常作为一种锁机制,防止某进程正在访问共享资源时,其他进程也访问该资源。因此,主要作为进程间以及同一进程内不同线程之间的同步手段。
5 消息队列( message queue ) : 消息队列是由消息的链表,存放在内核中并由消息队列标识符标识。消息队列克服了信号传递信息少、管道只能承载无格式字节流以及缓冲区大小受限等缺点。
6 信号 ( sinal ) : 信号是一种比较复杂的通信方式,用于通知接收进程某个事件已经发生。
7共享内存( shared memory ) :共享内存就是映射一段能被其他进程所访问的内存,这段共享内存由一个进程创建,但多个进程都可以访问。共享内存是最快的 IPC 方式,它是针对其他进程间通信方式运行效率低而专门设计的。它往往与其他通信机制,如信号两,配合使用,来实现进程间的同步和通信。
8套接字( socket ) : 套解口也是一种进程间通信机制,与其他通信机制不同的是,它可用于不同机器间的进程通信。

转载于:https://www.cnblogs.com/WayneZeng/archive/2013/04/20/3032592.html

进程之间有8种通信方式相关推荐

  1. python进程通信方式有几种_python全栈开发基础【第二十一篇】互斥锁以及进程之间的三种通信方式(IPC)以及生产者个消费者模型...

    一.互斥锁 进程之间数据隔离,但是共享一套文件系统,因而可以通过文件来实现进程直接的通信,但问题是必须自己加锁处理. 注意:加锁的目的是为了保证多个进程修改同一块数据时,同一时间只能有一个修改,即串行 ...

  2. html 如何实现一条竖线边上有 刻度_记一次腾讯面试:进程之间究竟有哪些通信方式?如何通信? ---- 告别死记硬背||CSDN博文精选...

    作者:帅地 有一次面试的时候,被问到进程之间有哪些通信方式,不过由于之前没深入思考且整理过,说的并不好.想必大家也都知道进程有哪些通信方式,可是我猜很多人都是靠着"背"来记忆的,所 ...

  3. 记一次腾讯面试:进程之间究竟有哪些通信方式?如何通信? ---- 告别死记硬背

    有一次面试的时候,被问到进程之间有哪些通信方式,不过由于之前没深入思考且整理过,说的并不好.想必大家也都知道进程有哪些通信方式,可是我猜很多人都是靠着"背"来记忆的,所以今天的这篇 ...

  4. java面试题9 牛客:不同的服务器之间,哪种通信方式是不可行的

    在一个基于分布式的游戏服务器系统中,不同的服务器之间,哪种通信方式是不可行的()? A管道 B消息队列 C高速缓存数据库 D套接字 首先看到这道题我是懵逼的,我们分别介绍一下各个的概念 管道为运行在同 ...

  5. 进程间的7种通信方式(含例程代码)

    下面的实验由我和我的同学完成的,这是操作系统课程的一个小实验,可以帮助理解进程间的通信. 进程间的通信 1.匿名管道 2.命名管道 3.消息队列 4.共享内存 5.信号 6.信号量 7.socket ...

  6. 进程间的7种通信方式全解析及代码示例

    目录 1.匿名管道 2.命名管道 3.消息队列 4.共享内存 5.信号 6.信号量 7.socket 进程间的7种通信方式如下: 管道pipe:管道是一种半双工的通信方式,数据只能单向流动,而且只能在 ...

  7. 进程间的几种通信方式的比较和线程间的几种通信方式

    近日想总结下进程间,线程间的通信方式,在网上搜索了下,感觉写的很好,照搬过来,当做加深记忆. 几种进程间的通信方式 (1) 管道(pipe):管道是一种半双工的通信方式,数据只能单向流动,而且只能在具 ...

  8. Linux进程间的6种通信方式

    一.进程的概念 进程是操作系统的概念,每当我们执行一个程序时,对于操作系统来讲就创建了一个进程,在这个过程中,伴随着资源的分配和释放.可以认为进程是一个程序的一次执行过程. 二.进程通信的概念 进程用 ...

  9. 进程间的五种通信方式介绍

    两种共享内存机制的IPC介绍 https://www.ibm.com/developerworks/cn/linux/l-ipc/part5/index1.html https://www.ibm.c ...

  10. 基于Linux的USB主/从设备之间的三种通信方式-转

    随着简单易用的接口日益流行,在中添加对USB接口的支持已成为大势所趋.本文通过介绍中支持USB的各种模块和库,分析了在Linux上利用USB实现高速串口和以太网连接等通信方式的具体方法. 通用串行总线 ...

最新文章

  1. information_schema.triggers 学习
  2. 百度搜索 带网页特效的关键词
  3. 汇编:转移目的地址在内存中
  4. html5——DOM扩展
  5. linux 连个文件都删除不了,什么鬼!
  6. 高效代码审查的十个经验
  7. Java架构师面试问些什么?微服务之springcloud面试题(共22题,含详细解答)
  8. kali linux set工具,求助: 社会工程学工具set 出现错误for kali linux.
  9. 备份数据库的expdp语句_Oracle数据库备份恢复Data Pump Expdp/Impdp参数详解与案例介绍...
  10. poj 2253 Frogger floyd 长路求权值最大边,属于简单题!!!!
  11. IT程序猿常用编辑工具:UltraEdit for Mac v21.00.0.12中文版
  12. 纯CSS实现下拉菜单导航
  13. 如何解决类似 curl: (7) Failed to connect to raw.githubusercontent.com port 443: Connection refused 的问题 #10
  14. 文章翻译-在线文章翻译软件支持批量导入翻译
  15. 分享一个linux下的steam的rpm安装包的链接
  16. sqlserver 附加数据库失败,操作系统错误 5:5(拒绝访问。)的解决办法
  17. 刷计算机应用教程,电脑怎么用Word格式刷?电脑使用Word格式刷的方法
  18. Linux日期计算器,【C++】日期类+日期万年历+日期计算器
  19. DzzOffice开源办公套件(网盘)+OnlyOffice本地预览
  20. AUC的相关知识及K-S曲线和K-S值介绍

热门文章

  1. 《Android 面试指南》来自腾讯、阿里巴巴、欢聚时代、美团、聚美优品、悦跑圈等大佬分享的面经...
  2. 私人影院音响效果如何有效提升?
  3. 【NOIP-2017PJ】图书管理员
  4. 学习日记12、list集合中根据某个字段进行去重复操作
  5. 解决C#中ListView闪烁的办法
  6. 使用javascript 实现.net 验证控件功能
  7. android studio AsyncHttpClient;AsyncHttpResponseHandler;RequestParams; 失效问题
  8. HTTPS和SSL握手过程(转载)
  9. Profiler中WaitForTargetFPS详解【转】
  10. java语言的一些小语法