Разработка, производство и продажа радиоэлектронной аппаратуры
|
Требуется программист в Зеленограде - обработка данных с датчиков; ColdFire; 40 тыс.
e-mail: jobsmp@pochta.ru
|
1. Если требуется малый джиттер - это realtime подсистема. Выделить код реального времени в отдельную нить, запускать с realtime приоритетом, продумать неблокирующую передачу данных от кода с меньшим приоритетом, попытавшись избежать при этом возможности инверсии приоритетов. Это всё не очень тривиально, но реально.
2. Никакого GUI в realtime коде. Только минимум действительно вычислений реального времени. Каждый вызов системной функции или даже аллокация или даже освобождение блока на общей куче может потенциально вызвать инверсию приоритетов, поэтому для реалтайма их необходимость должна быть тщательно продумана.
3. Sleep и WM_TIMER не использовать. Использовать multimedia timer, установив его разрешение в 1 мс.
4. Если требуется еще меньший дискрет - то только в специализированном железе, выдающем процессору прерывания и осуществляющем самостоятельно генерацию клока с малым джиттером.
Составить ответ | Вернуться на конференцию
Ответы