linux下进程间通信的方式


Posted in 面试题 onJanuary 23, 2013
信号(Signal):信号是比较复杂的通信方式,用于通知接受进程有某种事件发生,除了用于进程间通信外,进程还可以发送信号给进程本身;linux除了支持Unix早期信号语义函数sigal外,还支持语义符合Posix.1标准的信号函数sigaction(实际上,该函数是基于BSD的,BSD为了实现可靠信号机制,又能够统一对外接口,用sigaction函数重新实现了signal函数);
管道通信(Pipe)及有名管道(named pipe)通信:管道可用于具有亲缘关系进程间的通信,有名管道克服了管道没有名字的限制,因此,除具有管道所具有的功能外,它还允许无亲缘关系进程间的通信;
共享内存:使得多个进程可以访问同一块内存空间,是最快的可用IPC形式。是针对其他通信机制运行效率较低而设计的。往往与其它通信机制,如信号量结合使用,来达到进程间的同步及互斥。
信号量(semaphore):主要作为进程间以及同一进程不同线程之间的同步手段。
套接字(Socket):更为一般的进程间通信机制,可用于不同机器之间的进程间通信。起初是由Unix系统的BSD分支开发出来的,但现在一般可以移植到其它类Unix系统上:Linux和System V的变种都支持套接字。
报文(Message)队列(消 息队列):消息队列是消息的链接表,包括Posix消息队列system V消息队列。有足够权限的进程可以向队列中添加消息,被赋予读权限的进程则可以读走队列中的消息。消息队列克服了信号承载信息量少,管道只能承载无格式字节流以及缓冲区大小受限等缺点。

Tags in this post...

面试题 相关文章推荐
空指针到底是什么
Aug 07 面试题
分布式数据库需要考虑哪些问题
Dec 08 面试题
金蝶的一道SQL笔试题
Dec 18 面试题
哪些情况下不应该使用索引
Jul 20 面试题
PPP协议组成及简述协议协商的基本过程
May 28 面试题
Linux管理员面试题 Linux admin interview questions
Nov 01 面试题
施惠特软件测试面试题以及笔试题
May 13 面试题
你经历的项目中的SCM配置项主要有哪些?什么是配置项?
Nov 04 面试题
EJB2和EJB3在架构上的不同点
Sep 29 面试题
什么是JNDI的上下文?如何初始化JNDI上下文
Mar 10 面试题
如何用JQuery进行表单验证
May 29 面试题
怎样自定义一个异常类
Sep 27 面试题
linux系统都有哪些运行级别
Mar 26 #面试题
什么是符号链接,什么是硬链接?符号链接与硬链接的区别是什么?
May 03 #面试题
Linux内核产生并发的原因
Nov 08 #面试题
Linux如何为某个操作添加别名
Feb 05 #面试题
Linux如何压缩可执行文件
Mar 27 #面试题
进程的查看和调度分别使用什么命令
Mar 25 #面试题
Linux内核的同步机制是什么?主要有哪几种内核锁
Jul 11 #面试题
You might like
php中的注释、变量、数组、常量、函数应用介绍
2012/11/16 PHP
destoon二次开发入门示例
2014/06/20 PHP
利用PHP绘图函数实现简单验证码功能的方法
2016/10/18 PHP
PHP实现电商订单自动确认收货redis队列
2017/05/17 PHP
PHP实现PDO操作mysql存储过程示例
2019/02/13 PHP
微信JSSDK分享功能图文实例详解
2019/04/08 PHP
js 颜色选择器(兼容firefox)
2009/03/05 Javascript
javascript或asp实现的判断身份证号码是否正确两种验证方法
2009/11/26 Javascript
JavaScript基本编码模式小结
2012/05/23 Javascript
JavaScript的Module模式编程深入分析
2013/08/13 Javascript
JavaScript通过function定义对象并给对象添加toString()方法实例分析
2015/03/23 Javascript
jQuery使用fadeout实现元素渐隐效果的方法
2015/03/27 Javascript
socket.io实现在线群聊功能
2017/04/07 Javascript
微信小程序实现图片懒加载的示例代码
2017/12/13 Javascript
jquery自定义显示消息数量
2017/12/19 jQuery
一个Vue页面的内存泄露分析详解
2018/06/25 Javascript
vue+elementUI 复杂表单的验证、数据提交方案问题
2019/06/24 Javascript
es6中比较有用的7个技巧小结
2019/07/12 Javascript
Vue实现购物车详情页面的方法
2019/08/20 Javascript
layer.open 子页面弹出层向父页面传输数据的例子
2019/09/26 Javascript
js实现贪吃蛇小游戏
2019/10/29 Javascript
Vue2.X和Vue3.0数据响应原理变化的区别
2019/11/07 Javascript
js面向对象封装级联下拉菜单列表的实现步骤
2021/02/08 Javascript
利用Python获取操作系统信息实例
2016/09/02 Python
关于Tensorflow 模型持久化详解
2020/02/12 Python
如何验证python安装成功
2020/07/06 Python
Python爬虫实现selenium处理iframe作用域问题
2021/01/27 Python
英国鹦鹉店:Parrot Essentials
2018/12/03 全球购物
Subside Sports德国:足球球衣和球迷商品
2019/06/08 全球购物
经济管理专业毕业生自荐信范文
2014/01/02 职场文书
小学国庆节活动方案
2014/02/11 职场文书
2014年城管个人工作总结
2014/12/08 职场文书
2015年试用期工作总结范文
2015/05/28 职场文书
高中生物教学反思
2016/02/20 职场文书
2019求职信:应届生求职信范文
2019/04/24 职场文书
pandas 操作 Excel操作总结
2021/03/31 Python