system-v IPC共享内存通信

目录

system v IPC简介

消息队列、共享内存和信号量统称为system v IPC(进程间通信机制),V是罗马数字5,是UNIX的AT&T分支的其中一个版本,一般称它们为IPC对象。这些对象的操作接口比较类似,在系统中它们都会使用一种名为key的键值来统一标识。进程每次“打开”一个IPC对象,就会获得一个表征这个对象的ID,ID可以操作这个对象。IPC的对象是唯一的,但是ID是可变的。

共享内存需要用到的函数接口

shmget函数–获取对象ID

shmat函数–获得映射空间

shmctl函数–释放资源

图片[1]-system-v IPC共享内存通信-千百度社区
shmid: 共享内存段的标识符,通常是由shmget()函数返回的共享内存标识符。
cmd: 控制命令,用于指定要执行的操作。常见的控制命令包括:
IPC_STAT: 获取共享内存段的状态信息,并将其存储在struct shmid_ds *buf中。
IPC_SET: 设置共享内存段的状态信息,buf中包含要设置的新值。
IPC_RMID: 删除共享内存段。

共享内存实现思路

注意

共享内存是sytem-v IPC 中通信效率最高的,保护性不高。

千百度
© 版权声明
THE END
喜欢就支持一下吧
点赞6 分享
评论 抢沙发
头像
欢迎您留下宝贵的见解!
提交
头像

昵称

取消
昵称表情代码图片

    暂无评论内容