共享内存

来源:互联网 发布:ubuntu查找已安装软件 编辑:程序博客网 时间:2024/05/22 04:21

定义

共享内存指 (shared memory)在多处理器的计算机系统中,可以被不同中央处理器(CPU)访问的大容量内存。由于多个CPU需要快速访问存储器,这样就要对存储器进行缓存(Cache)。任何一个缓存的数据被更新后,由于其他处理器也可能要存取,共享内存就需要立即更新,否则不同的处理器可能用到不同的数据。共享内存是 Unix下的多进程之间的通信方法 ,这种方法通常用于一个程序的多进程间通信,实际上多个程序间也可以通过共享内存来传递信息。

共享内存的使用有如下几个特点:

  1. 可以被多个进程打开访问
  2. 读写操作的进程在执行读写操作时其他进程不能进行写操作
  3. 多个进程可以交替对某一共享内存执行写操作
  4. 一个进程执行了内存的写操作后,不影响其他进程对该内存的访问。同时其他进程对更新后的内存具有可见性
  5. 在进程执行写操作时如果异常退出,对其他进程写操作禁止应自动解除。
  6. 相对共享文件,数据访问的方便性和效率高

共享内存的应用

1.永久对象的配置
2.共享数据的查询

0 0
原创粉丝点击