ЖУРНАЛ СТА №1/2000

СТА 1/2000 www.cta.ru 32 Вниманию читателей предлагается описание особенностей и возможностей операционной системы реального времени QNX/Neutrino. QNX/Neutrino появилась не на пус- том месте: ей предшествовала ОС QNX, которая была первой коммерче- ской ОС, построенной на принципах микроядра и обмена сообщениями. Данная ОС реализована в виде взаимо- связанных, но в то же время независи- мых (взаимодействие посредством об- мена сообщениями) процессов раз- личных уровней. ОС QNX содержит в себе предсказуемость, что крайне не- обходимо для решения задач жесткого реального времени, масштабируе- мость и эффективность в управлении ресурсами, расширяемость, проявляю- щуюся в добавлении своего драйвера устройства без перекомпилирования ядра, собственный сетевой протокол FLEET, по скорости приближающий- ся к физической скорости передачи данных. Тем не менее, QNX имеет ряд недостатков и ограничений изза сво- ей ориентации на аппаратную архи- тектуру Intel x86, а также изза строго- го соответствия требованиям ОС ре- ального времени (ОС РВ). В число этих недостатков входят: ● отсутствие поддержки SMP (много- процессорных систем); ● отсутствие свопинга виртуальной па- мяти на диск; ● нестандартная поддержка нитей; ● много ограничений файловой систе- мы; ● отсутствие Unixdomain sockets. Если обобщить все проблемы QNX, то получатся четыре основных пунк- та: 1)недостаточная поддержка POSIX; 2)отсутствие механизма поддержки стандартных нитей; 3)отсутствие поддержки SMP; 4)непереносимость на другие аппарат- ные платформы. После знакомства с этими пунктами становится очевидно, что цель, кото- рой пытается достичь QSSL (http://www.qnx.com ) — разработчик QNX/Neutrino, состоит в создании POSIX совместимой ОС, пригодной для использования как в интеллекту- альных контроллерах, так и в мощных серверах и кластерах. П ОДДЕРЖКА POSIX- СТАНДАРТА Принято считать, что поддержка POSIXстандарта операционной сис- темой делает ее слишком громоздкой для встраиваемых систем. Тем не ме- нее, QNX/Neutrino является POSIX совместимой ОС (в отличие от QNX, слабо поддерживающей POSIX) для встраиваемых систем реального време- ни. QNX/Neutrino обладает высокой эффективностью, присущей предыду- щим версиям QNX, и включает в себя стандартный программный интер- фейс, что должно существенно облег- чить разработку приложений и пере- нос их с других платформ. В микроядре Neutrino реализованы основные функции POSIX: 1003.1, 1003.1a – управление процесса- ми, вводомвыводом и файловой си- стемой; 1003.1b – выполнение в реальном мас- штабе времени; 1003.1c – создание и управление нитя- ми в рамках процесса; 1003.1d – расширения ОС РВ (обра- ботчики прерываний и т.п.). П ОДДЕРЖИВАЕМЫЕ АППАРАТНЫЕ ПЛАТФОРМЫ На данный момент QNX/Neutrino поддерживает основные аппаратные платформы, используемые во встраи- ваемых системах, включая ● семейство x86 — 386, i386 EX, Am386SE/DE, AMD ElanSC400/410, 486, Cyrix MediaGX, Pentium, Pentium Pro, Pentium II, STPC; ● семейство PowerPC — 401, 403, 603e, 604e, 750, MPC860, MPC821, MPC823; ● семейство MIPS — R4000, R5000, NEC VR4300/4102/4111, VR5000, IDT R4700, QED RM5260/5270/ 5261/5271. О СНОВНЫЕ ПОНЯТИЯ QNX/N EUTRINO Ключевыми свойствами, делающи- ми ОС QNX/Neutrino крайне привле- кательной для использования во встроенных системах, являются: ● многозадачность; ● управляемая приоритетами диспет- черизация; ● минимальные накладные расходы на обработку аппаратных прерываний и переключение задач; ● масштабируемость; ● прозрачная сетевая поддержка; ● соответствие стандарту POSIX; ● поддержка многопроцессорных сис- тем; М ИКРОЯДРО QNX/N EUTRINO Уникальность QNX/Neutrino заклю- чается в эффективности использова- ния вычислительных ресурсов, в мо- дульности и простоте. Основные принципы построения ОС: ● архитектура «микроядро»; ● межпроцессорное взаимодействие, в основу которого положен принцип обмена сообщениями. Архитектура «микроядро» означает, прежде всего, построение ОС по прин- ципу модульности, а размер ядра игра- Neutrino: быстрее, выше и… меньше ОБЗОР/ПРОГРАММНОЕ ОБЕСПЕЧЕНИЕ Сергей Прожогин

RkJQdWJsaXNoZXIy MTQ4NjUy