Linux进程通信之共享内存

一、概述

    操作系统的各个进程通常运行于独立的内存空间,并且有严格的机制来防止进程之间的非法访问。一般的进程通信机制有:消息传递、管道、文件共享、内存共享等。共享内存通过Key值,来实现不同进程之间的共享。下文将列出进程间共享内存的实现方式。

二、实现共享内存的步骤

    1.创建内存共享区:通过函数shmget()实现,传入key值,该函数返回共享区域的id值。

    2.映射共享内存区:通过函数shmat()实现,该函数返回内存区的起始地址。

    3.访问内存共享区:通过函数shmget()实现,传入同一key值,然后shmat。

    4.进程通信:开始使用共享内存进行通信,但是由于没有同步机制,因此需要进程自己同步。

    5.撤销内存映射:通过shmdt()函数实现。

    6.删除内存共享区:通过函数shctl()实现。

三、下一步需要的了解

    共享内存调用的函数在linux中的实现机制,共享内存在linux中的使用。    

猜你喜欢

转载自blog.csdn.net/xuanweichangran/article/details/80506280
今日推荐