Я хотел бы знать, почему спин-блокировки используются вместо семафоров внутри обработчика прерываний.
Семафоры заставляют задачи переходить в спящий режим из-за конкуренции, что неприемлемо для обработчиков прерываний. По сути, для такой короткой и быстрой задачи (обработка прерывания) работа, выполняемая семафором, является излишней. Кроме того, спин-блокировки не могут выполняться более чем одной задачей.