semaphore - fixed lock