next up previous contents
下一个: 系统调用: semget() 向上: 内部数据结构 前一个: 内核 semid_ds 结构体

内核sem结构体

semid_ds结构体中,存在一个指向信号量数组基址的指针。每个数组元素都是sem结构体类型。它也在linux/sem.h:


        /* One semaphore structure for each semaphore in the system. */
        struct sem {
                short   sempid;         /* pid of last operation */
                ushort  semval;         /* current value */
                ushort  semncnt;        /* num procs awaiting increase in semval */
                ushort  semzcnt;        /* num procs awaiting semval = 0 */
        };

sem_pid

执行上次操作的 PID (进程 ID)

sem_semval

信号量的当前值

sem_semncnt

等待资源可用的进程数

sem_semzcnt

等待 100% 资源利用率的进程数



转换于
Fri Mar 29 14:43:04 EST 1996