Интересное про FreeRTOS & RP2040

Стало мне вдруг интересно, раскидывает ли FreeRTOS задачи по разным ядрам контроллера (в RP2040 их два).

Проделал лабораторную работу.

В баяне V3 у меня сейчас используется 11 задач. Я в них добавил кусочек кода, который выставляет флажок в разных местах, в зависимости от того, на каком ядре выполняется задача. Ну и сделал вывод флажков на экранчик.

Оказывается, оно действительно использует оба ядра. Причём не так, что задачи запускаются на конкретном ядре, и потом на нём остаются. Они вполне себе могут перемещаться между ядрами. Видимо, в зависимости от загрузки ядер в каждый конкретный момент.

Очень интересно это всё.

Рис. 1 КДПВ

Добавить комментарий