在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 */ };
执行上次操作的 PID (进程 ID)
信号量的当前值
等待资源可用的进程数
等待 100% 资源利用率的进程数