Разница между бинарным семафором и семафором со счётчиком заключается в количестве возможных значений счётчика. 13
Бинарные семафоры могут иметь только два значения: одно означает, что процесс или поток находится в критической секции (код, который обращается к общему ресурсу), а другие должны ждать, другое указывает, что критическая секция свободна. 1 В бинарных семафорах значение счётчика не может быть больше 1. 3
Семафоры со счётчиком могут принимать более двух значений. 1 Максимальное значение счётчика позволяет определённому количеству процессов или потоков одновременно обращаться к общему ресурсу. 1 Например, если счётчик установлен в 5, то одновременно выполнять код критической секции сможет 5 процессов. 4
Таким образом, бинарные семафоры ограничены двумя состояниями, в то время как семафоры со счётчиком могут находиться в нескольких состояниях в зависимости от значения их счётчика. 3