共享内存机制主要用于实现进程间大量的数据传输

进程间通信3--共享内存

共享内存是在内存中单独开辟的一段内存空间,这段内存空间有自己特有的数据结构,包括访问权限、大小和最近访问的时间等。该数据结构如下图

进程间通信3--共享内存


1、创建共享内存(shmget)

进程间通信3--共享内存


2、共享内存的控制(shmctl)

系统使用shmcl函数来实现共享内存的控制,包括读取状态设置状态删除
进程间通信3--共享内存


3、映射共享内存(shmat)

在进程使用一段共享内存空间之前,需要将该内存空间与当前进程建立联系,即将该共享内存映射(挂接)到当前进程
进程间通信3--共享内存


4、分离共享内存(shmdt)

在使用完毕后,需要将内存空间与进程分离
进程间通信3--共享内存

相关文章: