__SEMAPHORE_INITIALIZER
struct semaphore _name = __SEMAPHORE_INITIALIZER(_name, _n)
*sem = (struct semaphore) __SEMAPHORE_INITIALIZER(*sem, val);