Understanding Semaphores in Linux

A semaphore is a mechanism that allows contending process or thread to alter, monitor queries, and control shared system resources. A semaphore is a solution to race condition in multiprocessing system. Race condition occurs when multiple processes try to access shared resources. [...]