现在linux使用的进程间通信方式:(1)管道(pipe)和有名管道(FIFO)(2)信号(signal)(3)消息队列(4)共享内存(5)信号量(6)套接字(socket)为何进行进程间的通信:A、数据传输:一个进程需要将它的数据发送给另一个进程,发送的数据量在一个字节到几M字节之间B、共..
分类:
系统相关 时间:
2014-10-01 00:27:41
阅读次数:
368
volatile:多个线程同时访问一个变量,CLR为了效率,允许每个线程进行本地缓存,这就导致了变量的不一致性。volatile就是为了解决这个问题,volatile修饰的变量,不允许线程进行本地缓存,每个线程的读写都是直接操作在共享内存上,这就保证了变量始终具有一致性。lock:多个线程同时访问一...
分类:
其他好文 时间:
2014-09-30 16:32:09
阅读次数:
186
如今最经常使用的进程间通信的方式有:信号,信号量,消息队列,共享内存。 所谓进程通信,就是不同进程之间进行一些"接触",这种接触有简单,也有复杂。机制不同,复杂度也不一样。通信是一个广义上的意义,不仅仅指传递一些massege。他们的用法是基本相同的,所以仅仅要掌握了一种的用法,然后记住其他的用.....
分类:
系统相关 时间:
2014-09-29 12:42:20
阅读次数:
145
头文件:#include #include 定义函数:void *mmap(void *start, size_t length, int prot, int flags, int fd, off_t offsize);函数说明:mmap()用来将某个文件内容映射到内存中,对该内存区域的存取即是.....
分类:
其他好文 时间:
2014-09-28 14:18:42
阅读次数:
263
共享内存主要用于进程间通信php中的共享内存有两套扩展可以实现1、shmop 编译时需要开启--enable-shmop 参数实例: $shm_key = ftok(__FILE__, 't');/** 开辟一块共享内存 int $key , string $flags , int $mode ,....
分类:
Web程序 时间:
2014-09-28 02:16:10
阅读次数:
200
在C/C++ 中常用的内存分配和管理的方式有很多,如智能指针, STL容器, new/delete, malloc/free, brk, sbrk等等,最近研究了一下Unix比较底层的一种内存管理方式mmap/munmap,需要完全自己来维护分配的虚拟内存,没有任何其他辅助的数据结构来帮助维护内存空间。
一、在终端里输入 man mmap 可以查看此函数的API文档,此函数的具体描述如下:
v...
分类:
编程语言 时间:
2014-09-27 13:55:09
阅读次数:
799
服务器共享内存以及客户端打开服务器获得通知过程打开GS就会进行共享内存的初始化,过程很复杂,看了很多次,今天看的时候终于了解了大概了bool DataLayer::init(){ int pid = GetCurrentProcessId(); auto path = Plug::Get...
分类:
其他好文 时间:
2014-09-26 23:44:58
阅读次数:
281
线程同步
同属于一个进程的不同线程是共享内存的,因而在执行过程中需要考虑数据的一致性。
假设:进程有一变量i=0,线程A执行i++,线程B执行i++,那么最终i的取值是多少呢?似乎一定是i=2;其实不然,如果没有考虑线程同步,i的取值可能是1.我们先考虑自加操作的过程:a,首先将内存中i的值copy到寄存器;b,对寄存器中i的copy进行自加;c,将寄存器中自加的结...
分类:
编程语言 时间:
2014-09-25 14:13:09
阅读次数:
297
前段时间公司将一个软件平台从intel平台移植到loongson 3a平台,遇到了几个莫名奇妙的问题。现象是两次取内存的值不一样,场景基本上是两个进程共享内存,一个读,一个写。由于是应对国产化的潮流而进行的一个预研的项目,投入的时间不多,问题最后也没有解决。当时怀疑是cache alias的问题,因...
分类:
其他好文 时间:
2014-09-25 03:51:48
阅读次数:
265
在项目中,经常会遇到单机上进程间的通信,常用的进程间通信方式一般有以下几种
1 socket
2 unixsocket
3 共享内存(share-memory)
4 管道(pipe)
5 消息队列(message-queue)
6 文件(file)
7 消息总线(比如zeromq)
8 其他中间件(比如redis, memchache, 数据库等)
如果项目仅仅是消息的传递,对...
分类:
系统相关 时间:
2014-09-24 20:33:27
阅读次数:
3658