Наши партнеры

UnixForum





Библиотека сайта rus-linux.net

ОС реального времени FreeRTOS

Глава 3 из книги "Архитектура приложений с открытым исходным кодом", том 2.
Оригинал: FreeRTOS
Автор: Christopher Svec
Дата публикации: 2012 г.
Перевод: Н.Ромоданов
Дата перевода: сентябрь 2013 г.

Creative Commons. Перевод был сделан в соответствие с лицензией Creative Commons. С русским вариантом лицензии можно ознакомиться здесь.

FreeRTOS (произносится как «фри-ар-тосс") является операционной системой реального времени (RTOS) с открытым исходным, которая предназначена для встраиваемых систем. В системе FreeRTOS поддерживается множество различных архитектур и инструментальных средств компиляции, она создавалась как «небольшая, простая и удобная в использовании» система.

Система FreeRTOS находится в стадии активной разработки, которая была начата Ричардом Барри (Richard Barry) в 2002 году. Что касается меня, то я не разработчик системы FreeRTOS или сделал ничего для ее развития, я лишь пользователь и фанат этой системы. В результате, в этой главе, если ее сравнивать с другими главами этой книги, будет больше рассказано о том, «что» и «как» устроено в архитектуре FreeRTOS с меньшим количеством «почему».

Как и во всех операционных системах, основная работа системы FreeRTOS состоит в выполнении задач. Большая часть кода системы FreeRTOS связана с приоритетами, планированием и запуском пользовательских задач. В отличие от других операционных систем, система FreeRTOS является операционной системой реального времени, которая работает во встроенных системах.

Я надеюсь, что к концу этой главы вы поймете базовую архитектуру системы FreeRTOS. Большая часть системы FreeRTOS предназначена для запуска задач, так что вы подробно разберетесь с тем, как именно система FreeRTOS это делает.

Если вы первый раз заглядываете под капот операционной системы, я также надеюсь, что вы усвоите основы того, как работает любая ОС. Система FreeRTOS является относительно простой, особенно в сравнении с Windows, Linux или OS X, но во всех операционных системах используются одни и те же основные концепции и решаются задачи, поэтому может быть поучительно и интересно рассматривать любую операционную систему.

3.1. Что такое «встроенная» и «реального времени»?

«Встроенная» и «реального времени» может означать разное для разных людей, поэтому давайте определим, как эти понятия используются в системе FreeRTOS.

Встроенная система представляет собой компьютерную систему, которая разработана для выполнения всего лишь нескольких задач, например, система в пульте дистанционного управления телевизором, автомобильная система GPS, цифровые часы или кардиостимулятор. Встроенные системы, как правило, меньше и медленнее, чем компьютерные системы общего назначения, и, как правило, также дешевле. Типичная недорогая система может иметь 8-разрядный процессор с тактовой частотой 25 МГц, несколькими килобайтами оперативной памяти, и, возможно, 32 Кб флэш-памяти. В более дорогих встроенных системах может быть 32-разрядный процессор с тактовой частотой 750 МГц, 1 ГБ оперативной памяти, а также несколько гигабайтов флеш-памяти.

Системы реального времени конструируются таким образом, чтобы они успевали что-то выполнить в течение определенного промежутка времени; они гарантируют, что что-то будет выполнено так, как предполагается.

Отличным примером встроенной системы реального времени является кардиостимулятор. Кардиостимулятор должен сокращать сердечную мышцу в нужное время с тем, чтобы мы оставались в живых; он не должен быть слишком занят, чтобы не ответить вовремя. Кардиостимуляторы и другие встроенные системы реального времени разрабатываются очень тщательно с том, чтобы каждый раз вовремя выполнять свои задачи.


Продолжение статьи: Обзор архитектуры