社区
C语言
帖子详情
shmget(key,size,flag)的第三个参数可否为0?
leiajay
2010-12-08 10:50:22
现在我知道第三个参数可以去IPC_CREAT和IPC_EXCL的组合,但是看见一程序中if ( (Id = shmget(shmKey,(size_t)0,0)) == -1 )第三个参数为0,flag为0是什么意思?
#define IPC_CREAT 01000 /* Create key if key does not exist. */
#define IPC_EXCL 02000
...全文
544
4
打赏
收藏
shmget(key,size,flag)的第三个参数可否为0?
现在我知道第三个参数可以去IPC_CREAT和IPC_EXCL的组合,但是看见一程序中if ( (Id = shmget(shmKey,(size_t)0,0)) == -1 )第三个参数为0,flag为0是什么意思? #define IPC_CREAT 01000 /* Create key if key does not exist. */ #define IPC_EXCL 02000
复制链接
扫一扫
分享
转发到动态
举报
AI
作业
写回复
配置赞助广告
用AI写文章
4 条
回复
切换为时间正序
请发表友善的回复…
发表回复
打赏红包
leiajay
2010-12-09
打赏
举报
回复
[Quote=引用 1 楼 yihandrensunyong 的回复:]
shmget(keyval,segsize,IPC_CREAT|0660)
0666 每一位表示一种类型的权限,比如,第一个0是UID,第一个表示拥有者的权限,第二个6表示同组权限,第3个6表示他人的权限。
第三个参数为0 可能是shmget(keyval,segsize,IPC_CREAT|000)
我认为是。。。
[/Quote]
现在清楚了
事实上shmget(shmKey,(size_t)0,oflag)第三个参数oflag为IPC_xxx|mode,无IPC_xxx标识表示引用已存在的共享内存,mode为0表示无权限检查。所以oflag为0表示不做权限检查,打开已经存在的共享内存
就想叫yoko
2010-12-08
打赏
举报
回复
++[Quote=引用 2 楼 hai040 的回复:]
man
[/Quote]
yihandrensunyong
2010-12-08
打赏
举报
回复
shmget(keyval,segsize,IPC_CREAT|0660)
0666 每一位表示一种类型的权限,比如,第一个0是UID,第一个表示拥有者的权限,第二个6表示同组权限,第3个6表示他人的权限。
第三个参数为0 可能是shmget(keyval,segsize,IPC_CREAT|000)
我认为是。。。
【Linux】进程间通信-共享内存
为了让服务端和客户端在使用ftok函数获取
key
值时,能够得到同一种
key
值, 那么服务端和客户端传入ftok函数的路径名和和整数标识符必须相同,这样才能生成同一种
key
值,进而找到同一个共享资源进行挂接,这里我们可以将...
计算机操作系统(第3版)课后习题答案(完整版)
3.为什么说OS实现了对计算机资源的抽象? 答:OS首先在裸机上覆盖一层I/O设备管理软件,实现了对计算机硬件操作的第一层次抽 象;在第一层软件上再覆盖文件管理软件,实现了对硬件资源操作的第二层次抽象。OS 通 过...
计算机操作系统第四版课后习题答案(完整版)
3.为什么说OS实现了对计算机资源的抽象? 答:OS首先在裸机上覆盖一层I/O设备管理软件,实现了对计算机硬件操作的第一层次抽 象;在第一层软件上再覆盖文件管理软件,实现了对硬件资源操作的第二层次抽象。OS 通 ...
操作系统期末救命丸
进程通信(管道、共享内存)_机械狗pp的博客-CSDN博客_共享内存 管道 第三章 (1)理解调度算法的多个性能指标; 掌握多个调度算法及其具体场景的调度过程(先来先服务、短作业优先(非抢占式)、高响应比优先(非...
计算机操作系统(第四版)答案
3.为什么说OS实现了对计算机资源的抽象? 答:OS首先在裸机上覆盖一层I/O设备管理软件,实现了对计算机硬件操作的第一层次抽 象;在第一层软件上再覆盖文件管理软件,实现了对硬件资源操作的第二层次抽象。OS 通 ...
C语言
70,020
社区成员
243,264
社区内容
发帖
与我相关
我的任务
C语言
C语言相关问题讨论
复制链接
扫一扫
分享
社区描述
C语言相关问题讨论
社区管理员
加入社区
获取链接或二维码
近7日
近30日
至今
加载中
查看更多榜单
社区公告
暂无公告
试试用AI创作助手写篇文章吧
+ 用AI写文章