Мы поможем в написании ваших работ!



ЗНАЕТЕ ЛИ ВЫ?

Операционная система реального времени QNX

Поиск

Системы, работающие в реальном режиме времени, характеризуются тем, что они должны обрабатывать поступающие данные быстрее, чем они поступают, причём от нескольких источников одновременно. Технически это означает, что операционная система, работающая в таких условиях, должна обеспечивать не просто малое время реакции, а гарантированное время ре­акции. Разумеется, это время должно быть достаточно малым для того, что­бы она могла работать в реальных системах управления. Применительно к операционным системам вышеуказанное требование может быть реализовано путём применения нижеперечисленных архитектурных принципов её по­строения.

Первым обязательным требованием к архитектуре операционной сис­темы является вытесняющая многозадачность. Применение невытесняю­щей многозадачности, как это сделано в системах MS-Windows или Novel NetWare, неприемлемо, поскольку операционная система в данном случае допускает возможность блокировки или даже развала системы одним непра­вильно работающим процессом.

Второе требование - повышенная надёжность операционной систе­мы, которая может быть обеспечена только при применении довольно мощ­ных процессоров (не ниже Intel 80386).

Для эффективного обслуживания прерываний операционная система должна использовать алгоритм диспетчеризации, обеспечивающий вытес­няющее планирование, основанное на приоритетах.

Следующим требованием к операционной системе реального времени является эффективная поддержка сетевых коммуникаций и взаимодейст­вий между процессами, поскольку реальные технологические системы управляются целым комплексом компьютеров или процессоров.

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

При соблюдении всех перечисленных условий операционная система должна быть способна работать на ограниченных аппаратных ресурсах, поскольку одна из её основных областей применения - встроенные системы.

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

Операционная система QNX является эффективной, надёжной и мас­штабируемой многопользовательской мультизадачной сетевой операционной системой реального времени.

Операционная система QNX применяется в наиболее критических об­ластях. На её базе строятся высоконадёжные системы для управления про­мышленным и медицинским оборудованием, бортовыми системами, сетевы­ми маршрутизаторами и даже ядерными реакторами. QNX - встраиваемая, но при этом гибко масштабируемая система. Следует также отметить, что это довольно дорогая система, дороже большинства коммерческих систем, на­пример Microsoft. Структурная схема операционной системы QNX показана на рис. 2.3.

Используемое в QNX ядро чрезвычайно мало (около 8 Кб в QNX4 и от 20 до 32 Кб в различных реализациях QNX6) и полностью написано на ас­семблере, что обеспечивает наиболее высокую скорость работы системы. Ядро решает следующие задачи: осуществляет диспетчеризацию процессов, передачу сообщений, первичную обработку прерываний (переадресацию прерываний) и поддержку сетевого интерфейса. При этом поддерживается до 300 процессов с 32 уровнями приоритета и четырьмя алгоритмами планиро­вания: очередь, карусель, по приоритету сообщений и адаптация. Все функ­ции, выполняемые операционной системой, кроме функций ядра, реализуют­ся стандартными процессами, используемыми и в других операционных сис­темах.

Рис.2.3. Архитектура QNX

Менеджер процессов отвечает за создание и удаление процессов, управление памятью, таймеры, эмуляцию сопроцессора и диагностику. Раз­работаны два варианта менеджера процессов 16-ти и 32-х разрядная. Послед­няя может исполнять как 16-ти, так и 32-х разрядные приложения одновре­менно, для этого требуется установка двух системных библиотек (фактиче­ски имеется две операционные системы в одной упаковке). Кроме того, эта версия использует все возможности процессоров Intel для аппаратной защи­ты памяти.

Менеджер файловых систем позволяет работать с несколькими файло­выми системами одновременно (например, винчестер и флоппи-диски могут обслуживаться одновременно).

Менеджер устройств поддерживает байт-ориентированные устройства и позволяет осуществлять обмен информацией со скоростью до 115200 бит/с. Следует отметить, использование буферизированных портов (UART) является необходимым при скоростях свыше 2400 бит/с.

Менеджер сети позволяет системе взаимодействовать с наиболее попу­лярными вычислительными сетями (см. рис.3.4). Разработчики QNX создали собственную специальную сетевую технологию FLEET и соответствующий протокол FTL, который отличается от распространенных сетевых протоколов и является уникальным. Сеть на основе QNX представляет собой единый на­бор ресурсов, поэтому любой компьютер сети может использовать любой ре­сурс другой машины для решения своих задач. QNX-сеть (Qnet) похожа на универсальную большую машину (мейнфрейм), только собранную из обыч­ных компьютеров.

Вопрос 41



Поделиться:


Последнее изменение этой страницы: 2016-04-07; просмотров: 426; Нарушение авторского права страницы; Мы поможем в написании вашей работы!

infopedia.su Все материалы представленные на сайте исключительно с целью ознакомления читателями и не преследуют коммерческих целей или нарушение авторских прав. Обратная связь - 3.147.86.246 (0.006 с.)