> -- Trurl писал(а):
> Как раз в ББ известно.
А мне инетерсно - откуда?
Я просто первое, что говорю людям, начинающим программировать (а, тем более - встроенные системы) - "используйте принцип стека! - оставляйте после себя всё так, как было до вас!"

Например, "темплейт" работы с разделяемой переменной (доступной и из обработчика прерывания) следующий:

uint8_t flags = FLAGS_REG;
cli(); // запрет прерываний
... // творим
FLAGS_REG = flags; // А НЕ sti(); !!!

то же касается и других флагов регистра флагов и состояний...
Думаю и в других местах также и тот же принцип...
Тем более, когда в системе есть обратные вызовы и сложная зависимость между библиотеками...

Илит на счёт D - какая-то формальная договорённость существует и оформлена?