В данной серии статей будут приведены примеры использования основных features (таких как semaphore, mutex, event и msg) различных RTOS и вложены проекты для быстрого начала работы с ними.
Список используемых RTOS:
В данной серии статей будут приведены примеры использования основных features (таких как semaphore, mutex, event и msg) различных RTOS и вложены проекты для быстрого начала работы с ними.
Список используемых RTOS:
В данной серии статей будут приведены примеры использования основных features (таких как semaphore, mutex, event и msg) различных RTOS и вложены проекты для быстрого начала работы с ними.
Список используемых RTOS:
В данной серии статей будут приведены примеры использования основных features (таких как semaphore, mutex, event и msg) различных RTOS и вложены проекты для быстрого начала работы с ними.
Список используемых RTOS:
В данной серии статей будут приведены примеры использования основных features (таких как semaphore, mutex, event и msg) различных RTOS и вложены проекты для быстрого начала работы с ними.
Список используемых RTOS:
Данная серия статей посвящена описанию работы RTOS – написанной на основе TNKernel. Исходники с дополнением описанным в данной статье можно скачать по ссылке.
Данная серия статей посвящена описанию работы RTOS – написанной на основе TNKernel. Исходники с дополнением описанным в данной статье можно скачать по ссылке. Continue Reading
Данная серия статей посвящена описанию работы RTOS– написанной на основе TNKernel. Исходники вы можете скачать по этой ссылке.
Данная серия статей посвящена описанию работы RTOS– написанной на основе TNKernel. Исходники вы можете скачать по этой ссылке.
Семафоры — для разделения использования задачами разделяемых ресурсов.
Так например две задачи должны использовать один и тот-же USART. Одновременно они это делать не должны. И если вдруг задача 1 использует usart и произошла смена контекста на задачу 2. И задача 2 тоже хочет использовать USART, то семафор должен помешать задаче 2.
Семафор это переменная(счетчик). Вначале она инициализируется значением — максимальное количество задач, которые могут одновременно использовать разделяемый ресурс.
Каждый раз при входе задачи в разделяемый ресурс данная переменная уменьшается на 1, а при выходе увеличивается на 1. Вторая задача проверяет эту переменную и если она больше нуля — вход разрешен, меньше — запрещен. При входе и выходе задача 2, так-же изменяет эту переменную.
Данная процедура может понадобиться например в RTOS при смене контекста выполняемой задачи, когда необходимо сохранить стек в определенной памяти отведенной под стек задачи.