+ -
当前位置:首页 → 问答吧 → 关于IPC编程的一些疑惑,请大侠们赐教~~~~

关于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。

请高人指点指点啊。

作者: 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.

作者: louyong0571   发布时间: 2011-08-16

那共享内存大小为0那句该怎么解释呢

作者: wjlkoorey   发布时间: 2011-08-16