Определите понятия семафора и двоичного семафора.
 Ответ 
Современным низкоуровневым решением проблемы взаимного исключения является использование семафоров Дейкстры (E.W.Dijkstra), 1965г. Семафор (semaphore) – это специальный тип переменных, которые могут принимать только неотрицательные значения, и над которыми определены только три следующие операции ( – переменная типа «семафор»):
1) - операция инициализации семафора;
2) операция - значение переменной уменьшается на единицу, если это возможно; операция интерпретируется как операция опускания (закрытия) семафора;
3) операция - значение переменной увеличивается на единицу; операция интерпретируется как операция поднятия (открытия) семафора.
Если семафор закрыт (процессом 1, с помощью операции P(S)), то процесс 2, вызвавший операцию , ждет, пока семафор откроется (процессом 1, с помощью операции V(S)). Выполнение операций , не может быть прервано. Если одной и той же критической секции достигли несколько процессов, то они образуют очередь к семафору.
Простейшим семафором является двоичный семафор, который может принимать лишь два состояния – 0 и 1. Иногда двоичный семафор называют мьютексом (mutex – сокращение от mutual exclusion).