Normally semaphores are implemented as integer variables. The value of a semaphore represents initially the number of processes that are allowed to access the shared resource at the same time, which means one single semaphore is enough for regulating the access to one shared resource. But I have seen a lot of concurrency problems where there are more than one semaphore for the same shared resource. So my question is: in which case do we have more than one semaphore guarding the same shared resource?
3