Угу, интересно. Только нужно здраво обозначить угрозу и простые способы решения. Флаги обновления обычно ставятся в прерываниях, в основном цикле будет пофиг, в какой последовательности что ставилось. Volatile нужен, чтобы вообще флаг прочитался. В обратную сторону защита идентична защите от неатомарности - с помощью запрета прерываний. Необходимость volatile для организации правильного хранения переменных еще нужно доказывать.