1 struct semid_ds { 2 struct ipc_perm sem_perm; 3 unsigned long __sem_otime_lo; 4 unsigned long __sem_otime_hi; 5 unsigned long __sem_ctime_lo; 6 unsigned long __sem_ctime_hi; 7 #if __BYTE_ORDER == __LITTLE_ENDIAN 8 unsigned short sem_nsems; 9 char __sem_nsems_pad[sizeof(long)-sizeof(short)]; 10 #else 11 char __sem_nsems_pad[sizeof(long)-sizeof(short)]; 12 unsigned short sem_nsems; 13 #endif 14 long __unused3; 15 long __unused4; 16 time_t sem_otime; 17 time_t sem_ctime; 18 }; 19