Операционная система FreeRTOS. Самый полный курс на русском языке. Часть 3. Управление задачами.

preview_player
Показать описание
Полный курс по операционной системе FreeRTOS. Часть 3.
Тема: Управление задачами.

------------------------------------------
Если вы хотите поддержать автора канала номер карты Сбер:
2202-2023-2480-4008
------------------------------------------
Рекомендации по теме
Комментарии
Автор

Владимир, здравствуйте. На 32:21 как переменная xLastWakeTime будет обновляться, если вызов функции xTaskGetTickCount() находится в области кода, который выполняется только при первом запуске? Разве не должна она находиться в бесконечном цикле?

romankashirov
Автор

Хорошая подача. Большой труд. Полезно и интересно. Спасибо !

Ground
Автор

Про delayUntil рассказано неочевидно в сравнении с простым delay. Нужно упомянуть, что функция vPrint..., как пример, может иметь определённое "большое" время выполнения и при сложении с простым delay уже не обеспечивает нужную выдержку по времени.

Frutktt
Автор

шикарный материал, на случай "важных переговоров" скачаю на компуктер, оглассите пожалуйста альтернативные площадки, где можно еще будет посмотреть эти видео.

Plohoi_Chelovek_REDISKA
Автор

Благодарю за ваши труды🙏 комментарий для продвижение🦾 лайк от души👍

НиколайТорощин-еэ
Автор

Ку, дядя Вова :) Хоть я и в основном плотно сижу на OSA, но вопросы всё те же к и FreeRTOS. В основном проблемы две... 1) Как приоритетами вообще не заблокировать некоторые задачи, ибо их может быть несколько готовых к выполнению, но с разными приоритетами. 2) Как обеспечить атомарность операций, когда на выполнение задачи требуется больше чем квант (а то и несколько) времени. Понятно что все видео уже отсняты, но, или надеюсь что этому будет уделено время, или будет доснято отдельное кино.

processdemidnet
Автор

А разве TCB не должен хранить адрес текуще выполняемой операции (а не только адрес самой функции) ? Например шедулер отобрал управление у текущей задачи где-то посередине. Переменные мы запихнули в стэк, ок. Но когда нашей задаче снова дали порулить, то откуда шедулер узнает с какого места надо продолжить управление?

reindeermosseater
Автор

Владимир, большое Вам спасибо за курс, подача материала просто идеальна, даже не замечаешь как время проходит, и полностью погружаешься в преподаваемый материал! Вы реально делаете неоценимый вклад в развитие Российских разработчиков, кто в теме, те поймут меня... По стечению обстоятельств сейчас и сам разбираюсь с различными ОС для МК и одноплатников, а на ГБ еще не дошли до FreeRTOS, и мне Ваш курс сейчас очень помогает разобраться и подготовиться на будущее. Большое Вам человеческое спасибо за Ваш труд!

v.shindakov
Автор

Фи га ты пулемет)))) Только 2-у часть досмотрел)))

koliamor
Автор

vTaskDelayUntil() позволяет выполнять задачу с заданной периодичность с учетом времени выполнения кода, чего не делает vTaskDelay(), так ведь?
Наверное pdMS_TO_TICKS() лучше использовать везде чем писать в тиках? Таким образом будет более простой переход если изменится величина кванта времени (тика).

LitvinYaroslav
Автор

Можно еще коснуться вопроса глобальных переменных при использовании FreeRTOS. И отдельно по дерективам при объявлении переменных, типа volatile и т.п.

michal
Автор

Огромное спасибо! С таким потоком информации - праздники удались!

borovtsovable
Автор

НИЗКИЙ ПОКЛОН ВАМ ЗА ТАКУЮ Дай Бог вам здорвья!

igor
Автор

Владимир, очень круто. Вы педагог по призванию и блогер от бога

МихаилТиунов-сд
Автор

Подскажите пожалуйста где выделяется память TCB?

Арт-сг
Автор

Отлично, все понятно. Приступим к практике?

eugenevladoff
Автор

Владимир, еще раз хочется выразить Вам огромную благодарность! За Ваши труды, за знания - которые Вы несете в массы! Благодаря таким людям как Вы и например Narod Stream держится Мир! От всей души благодарен! И передаю Вам так же благодарности от нашей команды программистов из Нижнего. И спасибо за поддержку с дисплейчиками, надеюсь что скоро будем думать о серии..

aecorp
Автор

Спасибо за данный курс! Смотрю 3-ю часть - супер!

dmitriicharuiskii
Автор

Спасибо за прекрасный курс! Небольшая ремарка: usStackHighWaterMark - возвращает минимальное зарегистрированное значение оставшейся памяти выделенного стека в течении всего цикла задачи, а не минимальное значение самого стека.

Insideus
Автор

В каком месте программы вызывается vTaskDelete (NULL) ? Так, как указано в видео ( например здесь 7:39 ) никогда не выполнится, так как находится за бесконечным циклом?

eugenedukatta