Linux进程间通讯的几种方式的特点和优缺点,和适用场合
由于不同的进程运行在各自不同的内存空间中。一方对于变量的修改另一方是无法感知的。因此,进程之间的信息传递不可能通过变量或其它数据结构直接进行,只能通过进程间通信来完成。
快乐学习、快乐工作、快乐生活
Linux进程间通讯的几种方式的特点和优缺点,和适用场合
由于不同的进程运行在各自不同的内存空间中。一方对于变量的修改另一方是无法感知的。因此,进程之间的信息传递不可能通过变量或其它数据结构直接进行,只能通过进程间通信来完成。
1 Windows进程间通信的各种方法
进程是装入内存并准备执行的程序,每个进程都有私有的虚拟地址空间,由代码、数据以及它可利用的系统资源(如文件、管道等)组成。
多进程/多线程是Windows操作系统的一个基本特征。Microsoft Win32应用编程接口(Application Programming Interface, API)
提供了大量支持应用程序间数据共享和交换的机制,这些机制行使的活动称为进程间通信(InterProcess Communication, IPC),
进程通信就是指不同进程间进行数据共享和数据交换。
正因为使用Win32 API进行进程通信方式有多种,如何选择恰当的通信方式就成为应用开发中的一个重要问题,下面本文将对Win32中进程通信的几种方法加以分析和比较。
MPI_SEND(buf,count,datatype,dest,tag,comm)
buf,count,datatype是消息数据
dest,tag,comm是消息信封
MPI_RECV(buf,count,datatype,source,tag,comm,status)
buf,count,datatype是数据消息
source,tag,comm是消息信息
如果Infiniband网卡驱动已经正常安装,但是执行ibstatus
命令或者ibstat
命令时,Status字段总是显示Initializing状态,Physical State处于LinkUP状态,
物理状态显示的IB线缆是否已经正常连接到IB网卡上。如果显示LinkUP状态,则显示该主机的IB线缆已经借号了。
可以执行service opensmd restart
命令重启一下子网管理服务,大部分时候,你会发现,IB网络恢复正常了。
Hexo+Next主题集成Algolia搜索
http://blog.niices.com/Hexo-Next-Algolia-Search/
yum安装时出现:Cannot retrieve metalink for repository: epel. Please verify its path and try again
在CentOS 6.3 x86_64下安装php-mcrypt的时候出现了问题:Error: Cannot retrieve metalink for repository: epel. Please verify its path and try again,需要安装epel源。
解决方法: 一句话:把/etc/yum.repos.d/epel.repo,文件第3行注释去掉,把第四行注释掉。具体如下:
今天在部署一个其他人开发的项目时,遇到了一个问题,就是有一个页面的查询功能不能正常使用,由于该页面采用的是Ext.js框架,服务器端返回的数据是JSON格式,由于报错了,导致无任何JSON数据返回,页面估计也没有做任何超时判断,因此也没有提示错误信息。
打开该页面对应的js文件,找到了对应按钮的函数,并确定了对应的后台方法的URL,在浏览器中进行输入URL发送请求,发现还是报错了。
报错的root cause是java.lang.NoClassDefFoundError: Could not initialize class,后面的Class是一个包含了很多静态方法的工具类,该工具类的功能是根据IP地址返回具体的城市信息。
linux系统新建的用户用ssh远程登陆显示-bash-4.1$,不显示用户名路径。