Perhaps the current definition of a semaphore in sem_overview.7 could be clearer. A semaphore is an integer whose value is never allowed to fall below zero. What about the definition from the book [1]_ in the section (2.2.5 Semaphores)? [...] an integer variable to count the number of wakeups saved for future use. It is simple enough to be easy to understand. Kind of self-explanatory. Also, the whole "semaphore description" paragraph could be rewritten. A proposal as an example: Semaphore is a counter of its pending wakeups. A call to sem_wait() consumes one wakeup (decrements counter). If there is no wakeup to be consumed (counter equals zero) sem_wait() blocks. sem_post() adds one wakeup (increments counter). or something like: A semaphore is represented by an integer that stores the number of semaphore's pending wakeups (i.e., the number of calls to sem_wait() that won't block). [...] Maybe I'm talking bullshit, but at least it's worth to check it out. .. [1] Operating systems: design and implementation; 1997; Andrew S. Tanenbaum, Albert S. Woodhull; 2nd ed. Cheers! pasquali -- To unsubscribe from this list: send the line "unsubscribe linux-man" in the body of a message to majordomo@xxxxxxxxxxxxxxx More majordomo info at http://vger.kernel.org/majordomo-info.html