ВходНаше всё Теги codebook 无线电组件 Поиск Опросы Закон Четверг
21 ноября
1013887 Топик полностью
LightElf (23.06.2020 16:32, просмотров: 656) ответил fk0 на В таком варианте вместо запрета прерываний следует использовать мьютекс -- они для этого и существуют. Причём мьютексов связанных с разными и независимыми защищаемыми наборами данных может быть много, а флаг прерываний -- один всего. Мьютекс более эффективен. Более того, запрещать прерывания более чем несколько тактов -- дичь! Вопрос же не как критическую секцию сделать, а как сделать атомик (на основе которого уже можно сделать тот же мьютекс или критическую секцию).
Ну так никто не запрещает реализовать атомик через запрет прерывания, если подходящих инструкций процессору не завезли. Получатся как раз те самые несколько тактов. В FreeRTOS-е можно блокироваться из критической секции, система отслеживает такую ситуацию. 
Не надо делать мне как лучше, оставьте мне как хорошо