系统启动时报这个信息,initial semget():no space left on device 那位碰到过,请指导
我再solaris下创建semphore 用semget 创建的三个semphore 第一个建立通过的sem_leer 第二个就不通过了sem_voll 不知道为什么。下面是代码,谁知道阿 sem_leer = semget(KEYLEER,1,IPC_CREAT|0660); if(sem_leer < 0) { perror("sem_leer\n"); exit(1); } sem_voll = semget(KEYVOLL,1,IPC_CREAT|0660); { perror("sem_voll\n"); exit(2); } 报的错误是 NO SUCH FIEL OR DIRECTROY(好像是这样写的.) 死啦.谁知道阿...
我前两天看了一个程序, 程序中首先用semget(S_KEY, 1, IPC_EXCL| IPC_CREAT| 0666)) 建立了一个信号源,然后通过命令 arg.val = 1; semctl(sem_id, 0, SETVAL, arg 对此信号源进行了初始化 接下来,建立了一个子进程,我的这个操作系统是先执行子进程然后在执行父进程的。 在子进程中,首先通过semop(sem_id, &x_sem, 1)占用信号源,让子进程的信号源为P, 然后通过sleep(1)指令休眠,休眠后首先执行指令 semctl(sem_id, 0, IPC_ST...
我在HP-UX下建立了一个信号量,再次建时会失败,但奇怪的是errno居然是0,man了一下semget,实在不明白。 还有,有没有打开一个信号量的函数?谢谢大家 代码如下: semid=semget(0x12345678,1,0777|IPC_CREAT|IPC_EXCL); if (semid == -1) return; semid=semget(0x12345678,1,0777|IPC_CREAT|IPC_EXCL); if (semid == -1) { printf("errno is [%d]\n",errno); // 奇怪, errno 为 0.... if (e...
我在骆驼书上抄来的代码,运行后在die步停止,请问如何解决? $IPC_KEY = 1234; $IPC_RMID = 0; $IPC_CREATE = 0001000; $key = semget($IPC_KEY, $nsems , 0666 | $IPC_CREATE ); die if !defined($key); print "$key\n"; 操作系统是:tru64 $ERROR是空。 thks
发表于: 2004-10-06 08:10 发表主题: 关于semget信号源的问题 -------------------------------------------------------------------------------- 我前两天看了一个程序, 程序中首先用semget(S_KEY, 1, IPC_EXCL| IPC_CREAT| 0666)) 建立了一个信号源,然后通过命令 arg.val = 1; semctl(sem_id, 0, SETVAL, arg 对此信号源进行了初始化 接下来,建立了一个子进程,我的这个操作系统是先执行子进程然后在执行父...