ВходНаше всё Теги codebook 无线电组件 Поиск Опросы Закон Пятница
12 июля
399253 Топик полностью
VAI (03.04.2013 14:41, просмотров: 52) ответил MegaJohn на CM3 NXP17xx + RTOS: как вообще принято реализовывать измерение занятости процессора ? В Idle задаче запускаем аппаратный таймер, и сама задача делает ++, а потом сравнение ? А если изменить оптимизацию ? Либо еще фактор - смотря как поведет себя
Я среднюю загрузку считаю так: 1. Делаю 2 переменные-счетчика unsigned long cpu_idle; и unsigned long cpu_task;. 2. Делаю указатель на unsigned long *cpu_tick; 3. В задаче с системными тиками делаю ( *cpu_tick )++; 4. В менеджере задач, при переключении на "idle-задачу" делаю cpu_tick = &cpu_idle;, а при переключении на другие задачи cpu_tick = &cpu_task; Ну а дальше - дело техники.