QNX — операционная система для чайников

Статьи -> Операционные системы -> QNX

QNX — операционная система для чайников

Первоначально этот материал находился на моем первом сайте www.nsdevice.narod.ru.

Источник информации: http://stn-vidnoye.narod.ru/html/articles/qnx.htm

Февраль 2001
Трошин Сергей
stnvidnoye@mail.ru

    Нет, нет, вы меня, вероятно, не так поняли! Не для «чайников», а для чайников — чувствуете разницу? Это, конечно, некоторое художественное преувеличение — гипербола, но по сути, действительно, QNX — операционная система не только для персональных компьютеров, но и для самых разных бытовых и промышленных интеллектуальных устройств — управляющих технологическими процессами систем, станков с ЧПУ, интернет-приставок, видеовоспроизводящих агрегатов, игровых консолей, а возможно, и для холодильников, кофеварок и чайников недалёкого будущего. ОС эта во многом весьма примечательна и уникальна, но обо всём по порядку…
    В далёком 1982 году (тогда, кажется, IBM PC ещё не было) в не менее далёкой от нас Канаде фирма «Quantum Software Systems, Limited» — QSSL, созданная некими Гордоном Беллом и Дэном Доджем (Gordon Bell & Dan Dodge), представила миру новейшую многозадачную, многопользовательскую операционную систему реального времени Quick UNIX, разработка которой, говорят, началась аж по заказу Министерства Обороны США. Как видите, это была UNIX-подобная операционная система, вернее, совместимая со стандартом на переносимость приложений POSIX, которому соответствуют также UNIX и популярный Linux. Очень быстро, правда, пришлось её переименовать в созвучный с предыдущим вариантом названия «QNX», так как фирма AT&T имела права на торговую марку UNIX, и ей не очень пришлось по вкусу использование этого слова в разработке малоизвестной компании. Но, впрочем, горевать по этому поводу особенно никто не стал, тем более что QNX серьёзно отличался от UNIX — даже файловую систему он имел свою собственную, несовместимую ни с FAT, ни с другими «никсами». Данное переименование затронуло, в конце концов, и название самой конторы, создавшей QNX — однажды решено было расшифровывать QSSL как QNX Software Systems, Limited, дабы не перекликаться со многими другими фирмами, активно склоняющими в своих названиях слово «Quantum». К счастью, чехарда названий мало повлияла на творческий процесс — в то время аналогов у QNX просто не было — она оказалась первой в мире системой подобного класса.
    Создавалась QNX изначально для промышленного применения, управления самыми разнообразными технологическими процессами — начиная от атомной энергетики и заканчивая варкой пива и производством шоколадных батончиков. Для столь ответственных и критичных областей применения, как вы понимаете, виснущая в зависимости от погодных условий или расположения звёзд на небе Windows категорически не подходит. QNX же, в отличие от большинства ныне существующих систем, является системой реального времени, что в переводе с птичьего языка означает примерно следующее: эта ОС гарантированно среагирует на любое событие в течение определённого, также гарантированного, очень малого промежутка времени. Ряд операций QNX выполняет в 20 раз быстрее UNIX. Входные данные при этом обрабатываются почти мгновенно — ОС работает быстрее, чем они поступают, и при этом из их потока не пропадает ни один бит. Если же ОС будет обрабатывать данные медленнее, чем они приходят, то часть их может потеряться или же возникнет некая задержка, рассогласование действительных входных данных с той картиной, что имеет в данный момент оператор после их обработки системой, что, разумеется, неприемлемо в промышленных условиях — такие потери данных и задержки могут привести к многомиллиардным убыткам и даже человеческим жертвам. Достигается это в первую очередь истинной принудительной многозадачностью, используемой в QNX. То есть ни один зависший процесс не может ни при каких условиях заблокировать работу самой ОС или же как-то повлиять на другие задачи. Разумеется, QNX (здесь и далее имеется в виду её последний дистрибутив QNX RTP) является и полностью 32-разрядной системой — без этого необходимой надёжности достигнуть было бы невозможно. Следующая отличительная особенность QNX — чрезвычайно низкая требовательность к аппаратным ресурсам, что обусловлено тем, что QNX — микроядерная ОС. Ядро этой ОС, называемое Neutrino, имеет размер всего 32kb и выполняет только самые базовые функции, остальные же сервисы реализованы в динамически подключаемых модулях. Благодаря такому решению операционная система с минимальным набором дополнительных сервисов способна полноценно работать на 386 процессоре с 8 мегабайтами оперативки. Именно это обстоятельство позволяет найти ей ещё одну область применения — бытовые интеллектуальные устройства типа интернет-планшетов, банкоматов или кассовых аппаратов в магазинах.
    Система получилась весьма удачной, всегда была далеко не самой дешёвой (наиболее тяжёлые дистрибутивы стоили по несколько тысяч долларов), и сегодня в работе её можно увидеть на оборудовании, используемом многими известнейшими фирмами, например, Ford, IBM, Kodak, General Motors, Du Pont, VISA, Canon, Honda, SAAB, Panasonic, Sony. Говорят, что QNX работает даже на истребителях F16 — не зря, всё-таки, МинОбороны на неё тратилось. А всего инсталляций QNX по всему миру зарегистрировано более 400000! В основном, она работает там, где имеется очень сложное и ответственное производство с серьёзными требованиями к надёжности и непрерывности управления, а также ко времени реакции в аварийных ситуациях. Наибольшее распространение она получила в добывающих отраслях, в металлургии, машиностроении, химической промышленности, энергетике, банковском деле. Небезызвестная фирма Texaco использует QNX для дистанционного управления нефте- и газодобывающим оборудованием на платформах в Мексиканском заливе. General Electric и General Dynamics — для управления холодной прокаткой стали на своих предприятиях. Что самое интересное, даже в России эта малоизвестная среди основной массы наших пользователей ОС сегодня весьма широко представлена — она управляет магистральными нефтепроводами в городе Ухта, автоматизацией станов холодной прокатки на Магнитогорском металлургическом комбинате, применяется она в банках города Набережные Челны и в лабораториях Ачинского глинозёмного комбината. И это далеко не полный список! А ведь до 1990 года эта ОС даже попадала под запрет COCOM на поставки в страны Восточной Европы как технология, которую можно использовать в военных целях. Короче говоря, ОС эта очень известна среди специалистов, чрезвычайно надёжна и давно нашла своего потребителя во многих отраслях промышленности.
    Но какой интерес эта коммерческая промышленная ОС представляет для нас с вами, давно привыкшим к Windows или, на худой конец, к Linux? А дело в том, что совсем недавно QSSL предложила всем пользователям абсолютно новый и полностью бесплатный дистрибутив своей ОС, называемый «QNX Real Time Platform». Причём это не «демонстрашка», а абсолютно полноценная система, которую вы можете получить на сайте QSSL в двух вариантах — обычном EXE-файле размером 27 мегабайт, либо в виде ISO-образа загрузочного компакт-диска для самостоятельного переноса его на CD-R. Но тут уже вам придётся качать аж 270 «метров» — в основном, это дополнительные программы, которые при необходимости без труда докачиваются и по отдельности. Так что, теперь в полку альтернативных ОС для домашних компьютеров пополнение, а этот факт вниманием обойти никак нельзя — вдруг это окажется именно то, что мы так долго искали на замену ненавистных «Форточек». Давайте же взглянем на неё с точки зрения рядового пользователя бытового ПК.

Установка

    Впрочем, малюсенькая «демонстрашка» тоже есть, и есть уже довольно давно, года этак с 97 — она знаменита тем, что, имея полностью графический интерфейс, несколько небольших программ и интернет-браузер Voyager, умещалась всего на одной дискете (!!!), позволяя при этом выходить в Интернет даже на самых слабых машинах. Что и говорить, такое чудо производило впечатление! То, что нам предлагается сегодня, устанавливается уже на жёсткий диск и не имеет никаких ограничений в работе. Рекомендуемый минимум аппаратных мощностей — Pentium 200 MHz и 32 Mb оперативной памяти. Установка QNX абсолютно никаких трудностей не вызывает — она осуществляется из-под Windows, как для любой обычной программы (практически так же, как и установка ещё одной альтернативной ОС — BeOS), в файл с виртуальной файловой системой QNX. Места на диске этот файл занимает совсем немного — вы сами можете выбрать его размер в довольно широких пределах — даже на 100 мегабайтах она заработает, поскольку базовые файлы ОС занимают всего около 50 «метров». Для первого же знакомства и начальных экспериментов с ОС и программами для неё вполне подойдёт файл объёмом порядка 600 мегабайт, из которых 128 Mb будет отведено под файл виртуальной памяти. Кстати, удалить QNX столь же просто — в меню «Пуск» ваших «форточек» появится предназначенный специально для этого ярлык. Удаление осуществляется вполне корректно — никаких «хвостов» от QNX в системе не остаётся за исключением зарезервированных ей копий файлов AUTOEXEC.BAT и CONFIG.SYS. После очень быстрой процедуры инсталляции, при которой в обязательном порядке надо создать учётные записи «админа» root и одного пользователя, инсталлятор модифицирует файл CONFIG.SYS, прописывая туда загрузочное меню и вызов загрузчика QNX. Естественно, если у вас стоит «Миллениум», то такой вариант с «конфигом» не пройдёт — на этот случай предусмотрено создание загрузочной дискеты.
    Загрузка ОС начинается с текстовой фазы — как и положено родному брату UNIX, при этом в случае неполадок можно вызвать довольно обширное меню с дополнительными опциями. В небольшом диалоговом окне вам потребуется задать первоначальное разрешение экрана и выбрать драйвер видеокарты. Для моего оборудования предлагался только стандартный VESA-драйвер, который не хотел воспринимать частоту обновления экрана выше 60 Герц и позднее весьма заметно тормозил работу видеосистемы. Впоследствии все заданные в этом меню параметры легко изменить уже из самой ОС. Имеющиеся в наличии IDE-жёсткие диски и CD-ROM монтируются в системе также на стадии загрузки автоматически. Время загрузки заметно больше, чем у Windows9x, и после входа в систему перед нами предстаёт давно ставший стандартом для современных ОС Рабочий Стол.

Интерфейс

    Собственно графическая оболочка QNX называется «Photon» — это очень компактная и крайне нетребовательная к ресурсам разработка самой QSSL, но его можно при желании сменить на устаревший GUI «QNX Window», тоже от QSSL, либо на «юниксовский» «X Window», гораздо более прожорливый, чем «Photon», но зато и более совместимый с другими приложениями. «Фотон» же не вызывает никакой антипатии — весьма симпатичные обои Рабочего Стола, справа — Панель Быстрого Запуска с иконками установленных вместе с ОС утилит, регулятором громкости и индикаторами расходования системных ресурсов. В нижней части экрана — привычная Панель Задач и кнопка «Launch» — аналог меню «Пуск» в «Винде». Изначальная расцветка элементов интерфейса радует глаз, при этом практически всё настраивается и видоизменяется — цвета, шрифты, настройки параметров монитора. Однако не надо забывать, что родная среда для всех «Юниксов» — это командная строка, из-за чего графический интерфейс мне показался всё-таки недостаточно гибким в настройке — явно отсутствуют Менеджер Устройств и многие другие служебные компоненты, так облегчающие работу в Windows, а для работы с командной строкой надо перелопатить нереальное количество документации — встроенных системных утилит-команд порядка 150 — попробуй удержать всё это в голове. Но зато есть набор простых скринсейверов — мелочь, а приятно.

Комплектация

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

  • Editor — простенький текстовый редактор класса WordPad с минимальными возможностями форматирования текста.
  • File Manager — аналог Проводника, весьма удобный и простой. Обратите только внимание, что ваши диски надо искать в папке /FS корневого каталога. QNX позволяет работать с различными файловыми системами — POSIX, FAT-12, FAT-16, FAT-32, ISO9660, так что с DOS-разделами проблем не бывает.
  • Image Viewer — просмотровщик графики, понимает практически все более-менее распространённые графические форматы.
  • Media Player — универсальный проигрыватель для звука и видео с регулировками цвета, яркости и контраста. Поддерживаются плейлисты, встроен неплохой микшер. Проигрыватель проглотит и новейший MP3, и аудио-CD, и MPEG1, и MPEG2, вот только c MPEG4 пока — облом.
  • Voyager — достаточно современный и мощный веб-браузер, работает с JAVA, фреймами, в общем — всё при нём.
  • Vmail — очень грамотный почтовый клиент, читает ньюс-группы UseNet, поддерживает автоматическую вставку подписи в текст сообщения, но не работает пока с несколькими почтовыми ящиками.
  • Package Mgr — менеджер программ, предельно облегчающий установку и, что немаловажно — удаление приложений.

    Ну и, разумеется, всякая полезная мелочёвка — калькулятор, звонилка «Dialer», менеджер печати, утилита настройки региональных установок, терминал командной строки. Для того, чтобы с этим самым терминалом разобраться, вам придётся обратиться к системе помощи — это огромнейшая и очень подробная база данных по всем командам — без досконального её изучения настроить ОС просто невозможно — это вам не Windows, где всё делается методом научного тыка.

Программы

    Благодаря тому, что QNX является POSIX-совместимой ОС, большинство программ для UNIX-подобных операционных систем достаточно легко переносятся в QNX. Правда, для этого вам, скорее всего, придётся самолично компилировать исходники — полной совместимости с UNIX, всё-таки, нет. За установку же уже готовых для QNX программ отвечает Package Mgr, однако у меня он почему-то отказался воспринимать более двух программ с установочного диска, коих на нём, разумеется, в десятки раз больше. Но диск не особенно и нужен — на FTP–сервере QSSL вы найдёте практически всё из имеющегося на диске бесплатного софта — ftp://ftp.qnx.com/. Наиболее же примечательно среди приложений для QNX следующее:

  • PhAB — инструментарий визуального программирования для QNX на основе Watcom C/C++ для Photon — очень мощный пакет разработчика, позволяющий создавать всё то, чего вам не хватает в этой системе.
  • Netscape Navigator — комментарии излишни.
  • Norton Commander — аналогично.
  • Abi Word — текстовый процессор, почти как Word, но всё-таки не стоит от него ожидать восприимчивости ко всем распространённым текстовым форматам, да и русская версия отсутствует как класс.
  • GIMP — очень известный среди «линуксоидов» графический редактор, по возможностям вплотную приближающийся к Photoshop.
  • Apache — портированный с UNIX чрезвычайно популярный HTTP–сервер. Для работы в Интернете, вообще говоря, всего хватает — это и ICQ, и IRC-клиент, и FTP, и менеджеры закачек — надо только не полениться и скачать их из Сети.
  • Real Player — популярный медиа-плеер, имеется на диске QNX. Кстати, там же вы найдёте и DVD-проигрыватель.

    Всё, конечно, не перечислить, POSIX–совместимость даёт себя знать, программ для QNX в исходниках огромное количество, но вот насколько всё это доступно рядовому пользователю — большой вопрос, скорее всего, основная масса юзеров, избалованная простотой Windows, просто поленится что-то там компилировать, а с уже готовыми программами дела обстоят немного хуже, хотя производством софта именно для QNX занимается немало фирм во всём мире, в том числе и в России. Но всё относительно, ибо, по большому счёту, для QNX можно найти почти всё, что нужно.

Игры

    Разумеется, не стоит ожидать от промышленной ОС и каких-то изысков в области игрушек. Да и вообще — разве есть здесь достойный конкурент Windows? QNX, да и все остальные альтернативные операционные системы предназначены всё-таки, главным образом, для работы, игры для них не являются приоритетом. Максимум, что вам обычно предлагается — немного разгрузить мозги за какими-нибудь пасьянсами или тетрисами. Видимо, чтобы подчеркнуть серьёзность QNX, в изначальный состав самой ОС не включены даже самые простейшие игрушки. Если же вы рискнёте скачать себе целиком многогигабайтный образ компакт-диска с QNX, то обнаружите на нём лишь несколько классических игр, которые помогут скоротать пару часов свободного времени, либо немного отвлечься от занудной работы. Самая доступная игрушка — Columns — некое подобие Тетриса. Для игроков «мужескаго полу» вполне подойдёт великий и бессмертный Doom, ну а молодёжь, видимо, отдаст предпочтение уже Quake 3 Demo. Это то, что я нашёл в полной версии QNX на компакт-диске. Правда, в моём распоряжении был только первый вариант такого диска, образ которого в 90 мегабайт я качал несколько вечеров подряд. Сейчас же вам уже предлагается ISO-файл размером в пару сотен «мегов» — на него меня уже не хватило, но храбрецы, не пожалевшие на его закачку ценное время интернет-доступа, наверняка найдут там ещё много интересного. Ну и, конечно, опять-таки ищите любимые игры среди программ для Linux и UNIX — многие из них заработают и в QNX, тем более, что эта ОС поддерживает столь необходимый некоторым игроманам API от 3Dfx Glide. Но на последние новинки не рассчитывайте — старички Heretic, Hexen и иже с ними — вот то, что вы, скорее всего, подберёте.

Недостатки

    Честно говоря, эта ОС лично меня больше раздражала в работе, чем радовала. Так, привод компакт-диска не смонтировался автоматически, модем также системой не обнаруживался, универсальные VESA-драйвера видеокарты давали максимум 60 герц и при этом заметно тормозили. Даже программы с компакт-диска устанавливаться ни за что не хотели — сплошной геморрой, короче говоря. Заработал только звук, хотя, может, мне просто не повезло. При этом меня никак не привлекала перспектива лазанья по всяческим «конфигам» и «хелпам» — ну какой рядовой пользователь будет тратить первые месяцы работы с новой ОС на её изучение и настройку? Нам подавай всё на блюдечке, работающее и настраивающееся автоматически. Если вы тоже столкнётесь с трудностями, попробуйте на платах расширения отключить режим Plug-n-Play, переставив на них соответствующим образом перемычки. Также рекомендуется в CMOS Setup установить параметр PnP OS Installed = No. Так что, если у вас железное терпение, куча свободного времени, или уже имеется опыт общения с UNIX-подобными системами, то — флаг вам в руки, посмотреть на QNX действительно стоит. При том же подходе к ОС, какой я применил, и какой наверняка будет у остальных 90% пользователей, то есть, ленивом — нечего и думать о полноценном использовании QNX, в чём я и убедился. BeOS в этом плане предстаёт гораздо более дружелюбной к неискушённому пользователю. Больше всего поразило отсутствие графического интерфейса, подобного Менеджеру Устройств из Windows — «конфиги», командная строка и ещё раз «конфиги»… Для «линуксоидов» это, конечно, нормально, но сколько таких? Три процента пользователей? Или два? Да и «линуксоиды» вряд ли променяют свой Linux на ОС с закрытым в основной своей массе кодом. Короче говоря, над интерфейсом надо работать — сложность в настройке системы отпугнёт самого опытного Windows-пользователя. А ведь альтернативные ОС, наоборот, должны демонстрировать как можно больше своих преимуществ, дабы привлечь капризных поклонников Билла Гейтса.
    Возможно, гораздо более серьёзный недостаток — это недостаток драйверов. В последних версиях QNX список поддерживаемых устройств несколько расширен и продолжает постоянно пополняться разработчиками, что несомненный плюс, но очень вероятно, что часть вашего оборудования останется невостребованной. Хотя здесь, похоже, дела всё-таки получше, чем всё в той же BeOS. Широко распространённое «железо» поддерживается более-менее нормально. Извечные проблемы с русификацией в основном решены, но она в любом случае займёт у вас определённое время и потребует некоторого опыта в работе с ПК — в Сети найдёте подробнейшие инструкции со всеми нужными для русификации файлами. Да и вообще — читайте и ищите всевозможные FAQ в Интернете, наиподробнейшей документации по QNX не просто много, а очень много — в ней ответы на многие вопросы, которые наверняка возникнут — QNX не для слабонервных, без мощной документации её не освоить. Короче говоря, система интересная, перспективная, идеально соответствующая своему промышленному предназначению, но пока несколько сыровата в совместимости с железом и абсолютно не рассчитана на неподготовленного пользователя. В быту же вполне пойдёт для слабых машин — вдохнёт в них вторую жизнь. Но не для «чайников», да-с, не для «чайников»…

Ссылки

Метки: ОСи   QNX  

Комментарии.

Внимание.
Комментировать могут только зарегистрированные пользователи.
Возможно использование следующих HTML тегов: <a>, <b>, <i>, <br>.

Яндекс цитирования Ðåéòèíã@Mail.ru Rambler's Top100