Как включить статистику FreeRTOS в ESP32-Arduino?

Для активации функций vTaskGetRunTimeStats и vTaskList, необходимых для анализа производительности FreeRTOS на ESP32, требуется пересборка библиотеки arduino-esp32. Проблема заключается в том, что стандартные сборки не включают эту возможность, а инструкции по самостоятельной сборке часто устарели или отсутствуют.
Как включить статистику FreeRTOS в ESP32-Arduino?
Изображение носит иллюстративный характер

Процесс включает ручную загрузку и фиксацию версий ESP-IDF, ядра Arduino и других компонентов, используемых в PlatformIO. Для этого необходимо клонировать репозиторий esp32-arduino-lib-builder, закомментировать автоматическое обновление компонентов и вручную загрузить каждую библиотеку, используя соответствующие хеши коммитов, полученные из version.txt PlatformIO.

После фиксации версий необходимо отредактировать файл defconfig.esp32 (или аналогичный для других моделей ESP32), добавив строку CONFIG_FREERTOS_GENERATE_RUN_TIME_STATS=y. Далее запускается сборка библиотеки командой ./build.sh -t esp32. После успешной сборки необходимо скопировать каталог out/tools/sdk на место исходной библиотеки PlatformIO.

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


Новое на сайте

19989Шесть историй, которые умещаются на ладони 19986Как 30 000 аккаунтов Facebook оказались в руках вьетнамских хакеров? 19985LofyGang вернулась: как бразильские хакеры охотятся на геймеров через поддельные читы 19984Автономная проверка защиты: как не отстать от ИИ-атак 19983Взлом Trellix: хакеры добрались до исходного кода одной из ведущих компаний по... 19982Почему почти 3000 монет в норвежском поле перевернули представление о викингах? 19981Как поддельная CAPTCHA опустошает ваш счёт и крадёт криптовалюту? 19980Слежка за каждым шагом: как ИИ превращает государство в машину тотального контроля 19979Как хакеры грабят компании через звонок в «техподдержку» 19978Почему именно Нью-Йорк стал самым уязвимым городом восточного побережья перед... 19977Как одна команда git push открывала доступ к миллионам репозиториев 19976Зачем древние народы убивали ножами и мечами: оружие как основа власти 19975Как Python-бэкдор DEEPDOOR крадёт ваши облачные пароли незаметно? 19974Послание в бутылке: математика невозможного 19973Почему ИИ-инфраструктура стала новой целью хакеров быстрее, чем ждали все?
Ссылка