16+
Понедельник
22 октября
Вход |Карта сайта | |Upload |codebook | PARTS

 О смысле всего сущего 0xFF

 Средства и методы разработки

 Мобильная и беспроводная связь

 Блошиный рынок Объявления

caxapa

Микроконтроллеры ARM 

AVR PIC MSP PLD,FPGA,DSP 

Кибернетика Технологии 

Схемы, платы, компоненты 

Микроконтроллеры AVR

 
   Новая тема Правила Регистрация Поиск »» Архив
Вернуться в конференциюТопик полностью
Petrovich  (08.11.2017 10:30, просмотров: 6351)
Чота тоже испужался барьерности АРМов при буферах. И нарыл, что не только способные на ре-ордеринг АРМы, но и банальные АВРы могут при многозадачности поднаср@ть в карман зазевавшемуся: 
Задача1: head=tail=0; foreach(i=1,100){ head++; tail++; } Задача2: for(;;){ if(head<tail) {out ERROR;} } Задачи 3...N неважно Карусель на прерываниях AVR. Может ли быть ошибка, что голова ближе хвоста(на прямом буфере)? С налету кажется невозможно, но да, йопта легко. Лечение либо тупое - инкременты конечностей делать в единой критической секции, что не всегда возможно, либо придумайте сами есть красивое решение.
Главная | Карта сайта | О проекте | Проекты | Файлообменник | Регистрация | Вебмастер | RSS
Лето 7527 от сотворения мира. При использовании материалов сайта ссылка на caxapу обязательна.
MMI © MMXVIII