INTERNET-WEB.RU
Обучение работе с ПК
Операционные системы
Флеш (Flash)

QNX

QNX  - это эффективная, надежная и масштабируемая многопользовательская мультизадачная сетевая операционная система реального времени со своей собственной уникальной архитектурой микроядра. Ее интерфейс прикладного программирования (API) основан на последних стандартах POSIX (стандарт на переносимость приложений), поэтому пользователь получает одновременно выдающиеся характеристики и переносимость для всех прикладных программ.

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

Архитектурные принципы QNX - это модульность и механизм обмена сообщениями. Под модульностью понимается тот факт, что основные функции операционной системы выполняются независимыми процессами, взаимодействующими между собой с помощью какого-либо специального механизма. Этот механизм обеспечивается ядром системы, которое при таком подходе может быть весьма небольшим и обычно называется микроядром (microkernel).

Особенность QNX состоит в том, что использование сообщений для реализации взаимодействия между процессами (IPC) позволило ей сочетать такие трудно сочетаемые качества, как модульная архитектура и эффективность.

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

Размер микроядра в QNX составляет менее 10 Кбайт. В его функции входит:

   передача сообщений: доставка сообщений от одного процесса к другому во всей операционной системе;

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

К выполнению функций диспетчера ядро приступает в следующих случаях:

   какой-либо процесс вышел из блокировочного состояния;

   истек квант времени для процесса, владеющего центральным процессором;

   работающий процесс прерван каким-либо событием.

Операционная система QNX разработана канадской фирмой QNX Software Systems Ltd. (QSSL) . Эта система достаточно широко используется в Северной Америке и Европе и применяется преимущественно в сфере автоматизации технологических процессов в промышленности, начиная от атомных электростанций и заканчивая производством мороженого, и других областях деятельности, где одновременно требуются мультизадачность, надежность и способность работать в реальном масштабе времени, часто при наличии ограниченных аппаратных ресурсов. Существует устоявшийся термин - «Операционные системы реального времени», которым обычно определяют операционные системы, отвечающие указанным требованиям. QNX является ярким представителем и одним из лидеров этого класса. Исходный код закрыт.

Минимальные требования для промышленного варианта QNX - 386-й процессор, 8 Мбайт ОЗУ. Помимо промышленных версий QNX, стоящих немалые деньги, существует бесплатный вариант дистрибутива QNX Real Time Platform, который можно загрузить с сайта производителя. Минимальные требования для бесплатной версии - процессор Pentium-200, 32 Мбайт ОЗУ, 100 Мбайт на жестком диске.

© 2009 internet-web.ru. All Rights Reserved