关于IPC编程的一些疑惑,请大侠们赐教~~~~
时间:2011-08-16
来源:互联网
各位大侠好,小弟目前在做嵌入式开发,所维护的一个模块里用到了信号量和共享内存机制。
可原来那哥们留的代码看不懂,主要有下面一段:
enum { KEY=0x8da75adf};
key_t key = KEY;
semid=semget(key,0,0); 好多书上都说第二个参数不能为0,我在i386的机器上编译运行,用perror打印出居然是“没有那个文件或目录”。用交叉编译工具编好,放在mips平台上又不报错。好诡异啊。。。。
... ...
shmid=shmget(key,0,0); 这句也一样,共享内存的大小为0,同样i386有问题,mips就没问题
虽然mips上没问题,但在mips上跑还会没规律的出现段错误的BUG。
请高人指点指点啊。
可原来那哥们留的代码看不懂,主要有下面一段:
enum { KEY=0x8da75adf};
key_t key = KEY;
semid=semget(key,0,0); 好多书上都说第二个参数不能为0,我在i386的机器上编译运行,用perror打印出居然是“没有那个文件或目录”。用交叉编译工具编好,放在mips平台上又不报错。好诡异啊。。。。
... ...
shmid=shmget(key,0,0); 这句也一样,共享内存的大小为0,同样i386有问题,mips就没问题
虽然mips上没问题,但在mips上跑还会没规律的出现段错误的BUG。
请高人指点指点啊。
作者: wjlkoorey 发布时间: 2011-08-16
给你顶起啊
作者: tangxianghenggood 发布时间: 2011-08-16
man 里面这么说的
int semget(key_t key, int nsems, int semflg);
The argument nsems can be 0 (a don't care) when a semaphore set is not being created.
int semget(key_t key, int nsems, int semflg);
The argument nsems can be 0 (a don't care) when a semaphore set is not being created.
作者: louyong0571 发布时间: 2011-08-16
那共享内存大小为0那句该怎么解释呢
作者: wjlkoorey 发布时间: 2011-08-16
相关阅读 更多
热门阅读
-
office 2019专业增强版最新2021版激活秘钥/序列号/激活码推荐 附激活工具
阅读:74
-
如何安装mysql8.0
阅读:31
-
Word快速设置标题样式步骤详解
阅读:28
-
20+道必知必会的Vue面试题(附答案解析)
阅读:37
-
HTML如何制作表单
阅读:22
-
百词斩可以改天数吗?当然可以,4个步骤轻松修改天数!
阅读:31
-
ET文件格式和XLS格式文件之间如何转化?
阅读:24
-
react和vue的区别及优缺点是什么
阅读:121
-
支付宝人脸识别如何关闭?
阅读:21
-
腾讯微云怎么修改照片或视频备份路径?
阅读:28