Sistemas operacionais armazenam semáforos em inteiros que podem ser acessados via operações wait e signal. Essas operações não são atômicas e, portanto, vários processos podem, concorrentemente, acessar um mesmo semáforo.