Название QNX часто мелькает в новостях и на интернет-сайтах, посвящённых программному обеспечению. Однако что именно скрывается за недлинным названием, знает не такое уж большое количество человек. О том, что же такое QNX, и призвана рассказать в общих чертах эта статья.
Как написано на официальном русскоязычном сайте qnx.ru, "QNX - это операционная система реального времени, четко следующая принципам микроядерной архитектуры". Что это значит? Позволю себе ещё одну цитату, на сей раз из описания стандарта POSIX: "Реальное время в операционных системах - это способность операционной системы обеспечить требуемый уровень сервиса в определённый промежуток времени". То есть, система должна реагировать на события (например, на действия пользователя) с задержкой, не превышающей в любом случае некоторой установленной стандартом величины.
Что значат слова о том, что QNX - микроядерная операционная система? Это означает что ядро - главная часть операционной системы, предоставляющая приложениям координированный доступ к ресурсам компьютера - представляет собой не монолитную программу, а совокупность нескольких действующих параллельно отдельных процессов. Если какие-то функции ядра не нужны, то их можно безбоязненно убрать, не нарушая целостности ядра и ничего не изменяя в его остальных компонентах.
Где может применяться операционная система с подобными свойствами? На самом деле, сфер применения очень даже много. Применяется она, например, при управлении ядерными реакторами. Одна из самых известных систем этого класса, Open Architecture Distributed Control System, разработанная канадской компанией Atomic Energy of Canada Ltd., базируется на QNX. Используется QNX и на постсоветском пространстве: например, на её основе разработана система автоматизированного контроля и управления разводкой Троицкого моста через Неву в Санкт-Петербурге, реализованная ЗАО НПП "Промтрансавтоматика". Используется QNX и в управлении дорожным движением, в научных исследованиях - точнее, в приборах, с помощью которых эти исследования проводятся. Компания Cisco использует QNX в программном обеспечении для управления своими коммутаторами.
QNX известна не только своей модульностью и надёжностью, но и переносимостью: она умеет работать на таких процессорных архитектурах, как MIPS, PowerPC, SH-4, ARM, StrongArm, Intel XScale и x86. Поскольку эта операционная система соответствует стандарту POSIX (это стандарт программных интерфейсов операционных систем, разработанный с целью обеспечения переносимости ПО на уровне исходных текстов), то на неё сравнительно несложно переносить программный код с UNIX-платформ. Но, однако, будучи POSIX-системой, QNX отличается от большинства современных UNIX'ов тем, что за использование этой системы нужно платить, и совсем не мало.
Хотя в СНГ QNX пока не так популярна, как на Западе - до сих пор сказываются последствия репрессий за незаконное использование в 90-х годах, - но лёд уже тронулся. Государственная техническая комиссия при Президенте РФ выдала в 2004 году сертификат, удостоверяющий, что операционная система реального времени QNX 4.25 проверена по 2 уровню контроля отсутствия не декларированных возможностей. Сертификат разрешает использовать изделие при разработке систем защиты для автоматизированных систем до класса 1Б включительно в соответствии с требованиями руководящих документов Гостехкомиссии России. К сожалению, о сертификации QNX в Беларуси ничего узнать не удалось - видимо, система у нас не сертифицирована.
Думаю, за QNX - большое будущее. Потому что информатизация во всех сферах человеческой деятельности приводит к появлению большого количества встраиваемых систем, где QNX используется весьма широко.
Вадим СТАНКЕВИЧ,
dreamdrusch@tut.by