Август 31, 2021 / Комментарии 0 |
RTLinux — микроядерная операционная система жёсткого реального времени, которая выполняет Linux как полностью вытесняемый процесс. Работы над RTLinux завершились в 2007 году и на основе наработок этой ОС стартовал проприетарный проект Wind River.
Разработчики RTLinux пошли по тому пути, который предусматривает запуск из наноядра реального времени ядра Linux как задачи с наименьшим приоритетом. В RTLinux все прерывания обрабатываются ядром реального времени, которое включает собственный планировщик задач, обработчик прерываний и библиотечный код. В случае отсутствия обработчика реального времени для какого-то прерывания оно передаётся в Linux. Фактически Linux является простаивающей (idle) задачей ОСРВ, запускаемой только в том случае, если никакая задача не исполняется в реальном времени. При этом на Linux-задачу накладываются некоторые ограничения, которые, впрочем, прозрачны для программиста.
Linux не может выполнять следующие операции:
Ключ к реализации данной системы — эмулирующий систему управления прерываниями драйвер, к которому обращается Linux при попытке блокировать прерывания. В этом случае драйвер перехватывает запрос, сохраняет его и возвращает управление Linux.
Все аппаратные прерывания перехватываются ядром ОСРВ. Когда происходит прерывание, ядро RTLinux решает, что делать. Если это прерывание должно быть обработано обработчиком реального времени, то ядро вызывает соответствующий обработчик. В противном случае или если обработчик реального времени говорит, что хочет разделять это прерывание с Linux, обработчику присваивается состояние ожидания (pending). Если Linux потребовал разрешить прерывания, то прерывания, которые находятся в состоянии ожидания, эмулируются.
Ядро RTLinux спроектировано таким образом, что ядро реального времени никогда не нуждается в ожидании освобождения ресурса, занятого Linux-процессом.
Для обмена данными между ОСРВ и Linux предусмотрены следующие средства:
Ключевой принцип построения RTLinux — как можно больше использовать Linux и как можно меньше RTLinux. Действительно — Linux заботится об инициализации системы и устройств, а также о динамическом выделении ресурсов. На RTLinux ложится только планирование задач реального времени и обработка прерываний. Процессы реального времени реализованы в виде загружаемых модулей Linux для простоты запуска в контексте ядра, сохранения модульности и расширяемости системы.
Приложение реального времени с RTLinux, как правило, состоит из двух независимых частей: процесса, исполняемого ядром RTLinux, и обыкновенного Linux-приложения.
Такой модульный подход к написанию приложений присущ многим расширениям реального времени для многоцелевых систем, где задача реального времени работает независимо от ОС. Разработчики уже приняли схему, по которой критичные ко времени реакции задачи программируются с помощью API-интерфейсов, предусмотренных расширением реального времени, а все функции сервиса и интерфейса с пользователем возлагается на мощь операционной системы. При использовании данного подхода программисту нужно изучить только API-интерфейс обработчика событий реального времени.
Читайте также
На что обратить внимание при покупке жилья?
Как выбрать хорошую шубу из соболя
Соболиный мех роскошный, изысканный, элегантный и очень красивый. Вещи из
Весенняя обработка плодовых кустарников: что нужно делать?
Хороший урожай ягод и фруктов невозможен без регулярного и правильного
Как правильно выбрать платье при размере от 48 и выше?
Как выбрать торговый стеллаж в магазин?
Секционные ворота АЛЮТЕХ — конструкция, нюансы развития
Выбор секционных ворот означает не только рассмотрение характеристик. Репутация компании
Организация свадьбы: когда важна каждая мелочь
Трудозатратным процессом является организация свадебного торжества и его проведение. Всем
Мебель для дачи: отдыхать нужно с комфортом
Ассортимент садовой мебели настолько велик, что выбор сделать сложно. Особенно
В чем отличия мелирования от колорирования: особенности двух процедур
Металлические лестницы: прочность и изысканность в одном флаконе
Многие современные, и не очень, жилые и офисные здания имеют
Насколько удобно стало заказывать все для кулинарии в интернет-магазине
Работу кондитера можно сравнить с работой художника. Десерты, изготовленные умелыми
Афганский казан для плиты Rashko Baba – детальный обзор товара на Wildberries
Национальные блюда со своими особенностями и спецификой приготовления получаются самыми
Центр Натальи Зеневич – эффективная помощь в лечении псориаза
С такой проблемой, как псориаз, сталкиваются многие граждане нашей страны,
Как ухаживать за детской одеждой
Когда рождается долгожданный малыш, перед родителями появляется множество задач. Беззащитный