Компоненты и технологии • №2 '2011 компоненты



Pdf көрінісі
бет2/129
Дата28.09.2023
өлшемі4.1 Mb.
#478975
1   2   3   4   5   6   7   8   9   ...   129
Kurniz

Преимущества ОСрВ для МК
Здесь на помощь приходит ОСРВ. 
Рассмотрим преимущества, которые полу‑
чил бы наш гипотетический программист, 
заложив в основу программного обеспечения 
своего устройства ОСРВ:
1. Многозадачность. ОСРВ предоставляет 
программисту готовый, отлаженный ме‑
ханизм многозадачности. Теперь каждую 
отдельную задачу можно программиро‑
вать по отдельности так, как будто осталь‑
ных задач не существует. Например, мож‑
но разработать архитектуру программы, 
то есть разбить ее на отдельные задачи 
и распределить их между командой про‑
граммистов. Программисту не нужно за‑
ботиться о переключении между задачами: 
за него это сделает ОСРВ в соответствии 
с алгоритмом работы планировщика.
Это первая статья из цикла, посвященного операционной системе для ми-
кроконтроллеров FreeRTOS. Статья познакомит читателя с задачами, ко-
торые решают операционные системы (ОС) для микроконтроллеров (МК). 
Освещены вопросы целесообразности применения, преимущества и недо-
статки, присущие ОС для МК. Представлены возможности FreeRTOS, опи-
саны ее особенности, а также приведена структура дистрибутива FreeRTOS 
с кратким описанием назначения входящих в него файлов и директорий.
FreeRTOS —
операционная система 
для микроконтроллеров


97
КОМПОНЕНТЫ И ТЕХНОЛОГИИ • № 2 '2011
www.kite.ru
компоненты
микроконтроллеры
2. Временная база. Необходимо отмерять 
интервалы времени? Пожалуйста, лю‑
бая ОСРВ имеет удобный программный 
интерфейс для отсчета интервалов вре‑
мени и выполнения каких‑либо действий 
в определенные моменты времени.
3. О б м е н д а н н ы м и м еж д у з а д ач а м и .
Необходимо передать информацию 
от одной задачи к другой без потерь? 
Используйте очередь, которая гарантиру‑
ет, что сообщения дойдут до адресата в том 
объеме и в той последовательности, в ко‑
торой были отправлены.
4. Синхронизация. Разные задачи обращают‑
ся к одному и тому же аппаратному ресур‑
су? Используйте мьютексы или критиче‑
ские секции для организации совместного 
доступа к ресурсам. Необходимо выпол‑
нять задачи в строгой последовательности 
или по наступлении определенного собы‑
тия? Используйте семафоры или сигналы 
для синхронизации задач.
Кроме этого, одна и та же ОСРВ для МК 
может выполняться на множестве архитектур 
микроконтроллеров. Какое преимущество это 
дает? Часто приходится решать задачу не как 
разработать устройство с требуемой функ‑
циональностью, а как перенести имеющуюся 
разработку на новую аппаратную платформу. 
Это может быть связано с завершением про‑
изводства того или иного МК (окончание Life 
cycle), с появлением на рынке МК, включаю‑
щего в состав некоторые блоки, которые ра‑
нее были реализованы как отдельные микро‑
схемы, и т. д. В случае использования ОСРВ 
затраты времени и сил на переход на другую 
платформу будут заметно ниже за счет того, 
что часть кода, связанная с работой ОСРВ, 
останется без изменений. Изменения коснут‑
ся только кода, отвечающего за обращение 
к встроенной периферии (таймеры, АЦП, по‑
следовательный приемопередатчик и т. д.).
Однако за все надо платить. Использование 
ОСРВ приводит к определенным накладным 
расходам. Это:
1. Дополнительный расход памяти программ 
для хранения ядра ОСРВ.
2. Дополнительный расход памяти данных 
для хранения стека каждой задачи, сема‑
форов, очередей, мьютексов и других объ‑
ектов ядра операционной системы.
3. Дополнительные затраты времени процес‑
сора на переключение между задачами.


Достарыңызбен бөлісу:
1   2   3   4   5   6   7   8   9   ...   129




©dereksiz.org 2024
әкімшілігінің қараңыз

    Басты бет