Среда, 24.04.2024, 02:43
Приветствую Вас Гость | RSS
Главная | Каталог статей | Регистрация | Вход
HackUtill
Форма входа

IP Lookup

Меню сайта

Категории раздела
Новости Интернета [12]
Новости о компьютеной безопасности [2]
Новости политики [0]
Обзор новых интересных программ [0]
Обзор железа [0]
Новости мобильного рынка [0]

Облако тэгов
криптографическая защита статьи про криптографию ФАПСИ ЦРУ книга Крис Касперски скачать бесплатно +без регистрации Социальная инженерия Искусство обмана Кевин Митник Delphi советы мобильный телефон Хакинг дизассемблирование Скачать css html тэги книга о html тегах теги assembler программа для Windows скачать + бесплатно склеить файлы троян ICQ массовая рассылка рассылка по ICQ скачать бесплатно программу рассылк скачать программу icq bot SQL Helper sql injection google Pwn2Own взлом Chrome конкурс хакеров Anonimous SOPA арест интерпол кибер-атака Attack dns hack отключить интернет .htaccess 80 порт apache httpd.conf Windows 2003 защита Защита Windows 2003 DDoS ddos атака защита от атак защита сервера TOR безопасность решение суда

Наш опрос
Оцените мой сайт
Всего ответов: 28

Статистика

Онлайн всего: 1
Гостей: 1
Пользователей: 0

Друзья сайта
  • Все для веб-мастера
  • Программы для всех
  • Мир развлечений
  • Лучшие сайты Рунета
  • Кулинарные рецепты

  • Главная » Статьи » Новости » Новости Интернета

    QNX. Операционная система завтрашнего дня уже существует
    QNX. Операционная система завтрашнего дня уже существует


    ВВЕДЕНИЕ
    Выбор 32-х разрядной операционной системы для платформы INTEL еще не сделан. Если судить по фразеологии новостей, то в мире 32-х разрядных технологий идет война: "OS/2 против Windows", "Производители UNIX объединяются перед лицом Windows NT" и т.д. Конечные пользователи ожидают победителя с наибольшим числом готовых приложений. Это означает, что разработчики приложений должны заранее предугадать победителя.
    Безоговорочной гегемонии одной операционной системы ожидать не следует. Скорее всего, в результате «войны» произойдет перераздел рынка 32-х разрядных OS по областям применения. Можно выделить две области : офисно-деловую и системно-научно-промышленную. В первом случае важны наличие офисных инструментов (карандашей - редакторов, калькуляторов - таблиц, справочников - баз данных), возможность передачи документа от одного инструмента к другому и своевременная реакция на желания пользователя. Расставаться с Windows 3.1, в этом случае, было бы преждевременно. Во втором случае пользователь постоянно работает в среде одной какой-то программы,или программа функционирует сама по себе, без пользователя. Программное обеспечение для банков, управления технологическими процессами и роботами, серверов всего и вся занимает умы программистов ничуть не меньше, чем благоустройство электронных офисных столов. Если вы нуждаетесь в полноценной 32-х разрядной мультизадачной операционной системе, то у вас есть проблема - проблема выбора.
    Программист стремится получить операционную систему с максимумом возможностей и средств разработки. Потребитель желает получить продукт с наименьшими требованиями к ресурсам при максимальной производительности. Антагонизм почти что классовый. Вряд ли вы убедите потребителя, что 486-33/8/340 мало. А ведь при этой конфигурации любая 32-х разрядная OS с громким именем будет только «дышать», для вашей программы ни места, ни времени не найдется. Здравый инженерный смысл подсказывает, что дело не в количестве мегабайтов, а в принципе. Наши предки, окончательно не удовлетворясь эффективностью лошадиной тяги, перестали впрягать большее число лошадей и больше их кормить - они придумали новую концепцию. Паровой двигатель.



    OS QNX - РЕАЛЬНОСТЬ, ОПЕРЕЖАЮЩАЯ ФАНТАЗИЮ.

    Сведения об операционной системе QNX были долгое время разрознены, противоречивы и гипертрофированы, что до сих пор у широкого круга специалистов не сложилось четкого представления о возможностях этой системы. Причины такого явления исторические: продажа OS QNX в Россию была запрещена КОКОМ.
    Первая версия OS QNX была создана в начале 80-х годов группой программистов из университета Ватерлоо в Канаде. К тому времени выявились основные недостатки UNIX-систем, и сформировались новые концепции программирования такие как: событийное и объектно-ориентированное программирование. Основная задача, которую ставили перед собой разработчики, состояла в создании UNIX-подобной операционной системы способной работать в реальном времени. Для этого она должна была иметь встроенную поддержку сетей, эффективный механизм обмена данными между процессами, быструю и надежную файловую систему и низкие требования к аппаратным ресурсам, что дало бы возможность успешно функционировать во встраиваемых (embedded) системах и даже помещать операционную систему в ПЗУ. (Имеются ввиду системы типа программируемых логических контроллеров, устройства считывания кредитных карт и т.п.) Получившаяся операционная система прежде всего привлекла внимание разработчиков систем управления. После приведения набора системных вызовов QNX в соответствие со стандартом POSIX, вобравшему все лучшее из UNIX-систем, операционная система QNX стала находить все большее число поклонников.
    Что можно сказать о 32-х разрядной, с вытесняющей многозадачностью, многопользовательской, распределенной, масштабируемой операционной системе реального времени, умещающейся в 650 Kb оперативной памяти ?... Не может быть ?! Но она существует.



    ТРИ ОПЕРАЦИОННЫХ СИСТЕМЫ В ОДНОЙ.
    QNX версии 4.2 представляет собой как бы три операционные системы одновременно. Во-первых, OS соответствующая стандарту POSIX 1003.1,определяющему набор обязательных системных и инструментальных функций, и
    стандарту POSIX 1003.2, определяющему набор <strong>утилит</strong> (ls, mkdir и т.д.). Именно это обстоятельство вызвало резкое увеличение спроса на OS QNX в 1994 году. Во-вторых, распределенная операционная система с высокоэффективным механизмом взаимодействия задач в сети. В третьих, операционная система реального времени, самая используемая в этой области.
    OS QNX 4.2 является масштабируемой и содержит сразу два варианта операционной системы: 16-и разрядный для 286-х и 32-х разрядный для 386-х и выше. Варианты совместимы снизу вверх, т.е. 32-х разрядный вариант операционной системы способен выполнять как «родные», так и 16-и разрядные программы.



    КОНЦЕПЦИИ.

    В основе незаурядных способностей QNX лежит технология микроядра (microkernel technology) и высокоэффективная реализация механизма передачи сообщений (messages passing).
    Микроядро имеет размер 10 Kb и является собственной разработкой фирмы QNX Software. Обычно микроядро удачно сравнивают с RISC-процессорами. Функции, которые можно обеспечить вне микроядра, должны
    быть реализованы вне микроядра. Микроядро QNX обслуживает всего 14 запросов и состоит из трех блоков: блока взаимодействия между процессами (interprocess communication - IPC), диспетчера процессов (Scheduler) и переадресатора прерываний (hardware interrupt redirector). [Рис.1] Все остальные, и служебные и пользовательские задачи, являются просто процессами и конкурируют за право получения процессорного времени в соответствии с со своими приоритетами и дисциплинами диспетчеризации. Согласно POSIX 1003.4 в OS QNX процесс может иметь уровень приоритета от 1 до 32 и одну из трех дисциплин диспетчеризации: FIFO, «карусель» и с повышением приоритета.
    Для упрощения (а значит ускорения) администрирования доступа и управления ресурсами в OS QNX реализована концепция менеджеров. [Рис.2] В стандартной поставке вы найдете 4 основных менеджера ресурсов:
    Proc - процессов,
    Fsys - файловой системы POSIX,
    Net - сети,
    Dev - устройств.
    Могут оказаться не бесполезны менеджер файловой системы DOS (Dosfsys), менеджер файловой системы для CD-ROM (Iso9660fsys) и менеджер накопителей без файловой системы (Blockfsys). На данный момент QNX работает с 8 типами файловых систем. Tiny Filesystem, Flash Filesystem и Execute-in-Place Filesystem предназначены для встраиваемых систем, а Network File System (NFS) в комментариях не нуждается.
    Такое количество менеджеров дает представление о простоте расширения возможностей операционной системы, построенной на микроядре. Менеджер является процессом и отлаживать его не сложней чем любой другой процесс. При возникновении нового типа устройств достаточно создать новый менеджер. Ярким примером сказанного служит менеджер PCMCIA-устройств.
    Главное преимущество технологии менеджеров по сравнению с монолитными операционными системами состоит в стабильности к аппаратным сбоям и программным ошибкам. Авария «железа» или неправильно написанный драйвер не повлекут за собой крах всей операционной системы, а только сделают недоступным соответствующий ресурс. Микроядро и остальные менеджеры ресурсов и драйвера будут по-прежнему функционировать.
    В OS QNX есть все стандартные средства POSIX для обмена данными между процессами: каналы, FIFO-файлы, сигналы, разделяемая память, семафоры. Ограниченность возможностей этого системного инструментария при взаимодействии процессов не имеющих родственных связей ведет к усложнению внутренней архитектуры программных комплексов и в итоге к потере скорости.
    Более удобным является метод передачи сообщений.
    Рассмотрим реализацию классической архитектуры клиент-сервер на базе этого метода в OS QNX. [Рис.3] Пусть у нас есть сервер запросов и клиент. При запуске сервер сообщает операционной системе о присвоении себе имени qnx_name_attach(«I'm Server»). И переходит в состояние ожидания: client_process_id=Receive(server_receive_buffer_ptr). После чего блокируется операционной системой (не имеет управления!), а не находится в цикле проверки семафора или флага, транжиря процессорное время. Клиент после запуска проверяет наличие сервера
    server_process_id=qnx_name_locate («I'm Server»), формирует запрос и отправляет его Send(server_process_id,client_send_buffer_ptr, client_replay_buffer_ptr). Процесс-клиент блокируется до получения ответа. Операционная система сразу же разблокирует процесс-сервер. Выполнив запрос, сервер вернет результат процессу-клиенту через системный вызов Replay(client_process_id, server_replay_buffer_ptr). Во время этой операции выполнялась только одна(!) нить управления, что в общем случае ведет к уменьшению активных процессов в операционной системе и, как следствие, увеличению доли процессорного времени для активных процессов.
    Обмен сообщениями считается медленным механизмом, но в QNX он реализован на прерываниях и поэтому максимально эффективен. К тому же в QNX нет системной очереди сообщений, которая является узким местом и источником проблем для многих операционных систем. При обмене, сообщения копируются ядром из контекста одного процесса сразу в контекст другого.
    Процессы могут также записывать сообщения прямо в специально объявленные области контекста своих абонентов.
    В некоторых случаях, когда блокировка передающего процесса нежелательна,применяют механизм proxy (посредник). Proxy необходим в следующих случаях: во-первых, когда процесс хочет уведомить другие процессы о наступлении некоторого события, но не имеет время на блокировки; во-вторых, когда процесс хочет передать данные (механизм передачи данных произвольный), но не нуждается в подтверждении об их приеме; в-третьих когда обработчик прерываний сообщает процессу, что данные доступны. Proxy представляет из себя псевдопроцесс и OS может «складировать» на нем до 65535 сообщений. Вы можете создать несколько proxy, ассоциировать их с открытыми устройствами или таймерами и ждать событий.
    Взаимодействие пользовательских процессов-клиентов с системными менеджерами-серверами ресурсов происходит по описанным выше схемам. Например, операция чтения файла - это запрос менеджера файловой системы.



    СЕТЬ QNX .
    Особых лестных слов заслуживает возможность создания распределенных систем на базе OS QNX. Под термином «распределенная система» обычно понимают набор компьютеров, на каждом из которых установлена копия операционной системы и соединенных между собой сетью. Но для пользователя эта система представляется как один большой компьютер. Ему доступны все устройства и ресурсы, доступ к которым ему разрешил администратор. Мало того, для программиста также безразлично на каких узлах сети будут работать его взаимодействующие между собой задачи: все на одном, все на разных или в другой комбинации. Процессы по-прежнему будут связываться через механизм Send-Receive-Replay или proxy, а операционная система сама разберется кто и где находится. QNX целиком берет на себя обеспечение сетевых коммуникаций, что дает возможность сосредоточить внимание программистов на прикладных, а не системных аспектах программ. Также вы имеете возможность оптимально использовать все компьютеры в сети.
    Для увеличения пропускной способности сети OS QNX может работать через три сетевых канала одновременно. Сетевая технология OS QNX носит название FLEET:
    Fault-tolerant - если одна физическая сеть вышла из строя QNX перейдет на использование других автоматически;
    Load-balancing - при загруженности одного физического канала будет выбираться свободный;
    Efficient - сетевые драйверы QNX полностью используют все аппаратные возможности сетевого оборудования для увеличения пропускной способности;
    Extensible - для поддержки новых сетей требуются только новые драйверы;
    Transparent - так как нет разницы между локальным и сетевым взаимодействием процессов, любые приложения могут работать в сети без модификаций.
    Набор из трех даже недорогих сетевых плат NE2000 превосходит производительность шины ISA. Обсуждение областей применения систем с тремя стомегабитными платами заведет нас в райские кущи фантазии о таких «бесполезных» вещах как полноформатное видео в реальном масштабе времени.
    QNX Software помнит и о рядовых пользователях и программистах, необремененных избытком финансов. Драйвер Net.fd (сетевой драйвер «на дескрипторе файла») позволяет работать сети QNX через любые устройства, используя их драйверы. Таким образом без лишних хлопот в QNX реализована технология удаленных коммуникаций. Через модем вы можете подсоединиться как терминал или как узел сети QNX.
    Как мы видим, на базе системных средств QNX можно создавать программное обеспечение с любой необходимой архитектурой: серверы ресурсов, клиент-серверы, распределенные объекты и т.д.
    Не надо забывать, что QNX прежде всего операционная система реального времени. Время реакции на аппаратные прерывания и время, затрачиваемое операционной системой на переключение между процессами являются главными характеристиками операционных систем и наиважнейшими характеристиками для систем сбора данных и управления. По этим показателям QNX по праву считается лидером. [Рис. 4] Вы можете провести испытания сами по проведенному листингу. Лозунг фирмы QNX Software «We work in real time» вовсе не рекламный трюк. Более ста фирм из списка «Fortune 500» такие как: Du Pont, Kodak, Motorola, General Motors и др., используют QNX в системах коммуникаций, управления роботами и технологическими процессами.



    ВСЕ ДЛЯ ПРОГРАММИСТОВ.

    Администрирование OS QNX по сложности сравнимо с администрированием MS DOS последних версий, а обилие средств разработки выгодно отличает эту операционную систему от других систем реального времени и некоторых реализаций UNIX.



    ЯЗЫКИ ПРОГРАММИРОВАНИЯ.


    Язык C является неотъемлемой частью POSIX систем. Самым известным из компиляторов С существующих для OS QNX, является продукция фирмы Watcom. Watcom C и С++ в представлении не нуждаются. Версия 9.51 генерирует как 16-и битные, так и 32-х битные коды с оптимизацией от 286-го до Pentium процессоров. Компиляторы Watcom известны беспримерным уровнем оптимизации по скорости выполнения и компактности исполняемых модулей. За оптимизацию приходится расплачиваться временем компиляции, но при создании больших проектов в OS QNX можно воспользоваться способностью утилиты make вести компиляцию разных частей проекта на нескольких узлах сети одновременно. Полноэкранный отладчик Watcom Video и Execution Profiler облегчают отладку программ.



    ГРАФИЧЕСКИЕ СРЕДЫ.

    Если следовать хронологической последовательности, то первая система - QNX Windows. Это полноценная графическая среда реализующая стандарт Open Look фирмы SUN Microsystems и имеющая все средства для построения интерфейсов и разнообразные утилиты. QNX Windows способна работать на Intel 286 при минимальных затратах памяти (2 Mb).
    Неумолимая в своей приверженности к стандартам, фирма QNX Software целиком перенесла X-Windows System X11R5 в свою операционную систему. Благодаря оптимизирующему компилятору Watcom C размер исполняемого кода такой простой утилиты как Xlogo уменьшился с 300 Кб до 30 Кб. Фирма QNX Software уделяет много внимания удобству переноса исходных текстов программ их UNIX в QNX, поэтому перенос утилиты Xv, состоящей из 50000 строк, занял один день. Производительность X-Windows под OS QNX составила для графических карт на шине VESA LocalBus: VGA - 20 000, ATI Mach32 - 115 000, S3/928 - 155 000 (показатель Xstones утилиты X11perf).
    И это еще не все. В настоящее время проходит бета-тестирование распределенной графической среды Photon, построенной по технологии микроядра и соответствующей стандарту Motif. Photon занимает 160 Кб оперативной памяти (это не опечатка). Это козырная карта как на уже давно освоенном рынке встраиваемых (embedded) систем, так и на новых (для мультизадачных OS) рынках переносных компьютеров и PDA (Personal Digital Assistent).
    Для облегчения построения приложений для QNX Windows, X-Windows и Photon, QNX Software предлагает пакет AppBuilder. AppBuilder не только помогает конструировать элементы интерфейса (окна, диалоги, меню), но и генерирует make-файлы, header-файлы и тексты самих программ.


    КОММУНИКАЦИИ, DOS, БАЗЫ ДАННЫХ.
    Такого количества драйверов для плат сбора данных и промышленных микроконтроллеров вы не найдете ни в одной операционной системе кроме QNX.
    Коммуникации - еще одна из сфер, где способности OS QNX находятся вне конкуренции. Для QNX существуют реализации всех известных протоколов и технологий (IPX, Netbios, TCP/IP, X.25, SMB, SNMP, RPC, NFS, SLIP, Frame Relay, ISDN), предлагаемые QNX Software и другими фирмами.
    В OS QNX сделано все чтобы обслужить «старушку» DOS. В состав операционной системы входит менеджер файловой системы DOS, а если вам не хватает этого, то вы можете приобрети эмулятор PC DOS - Rundos. Под Rundos могут выполняться программы DOS и Windows 3.1 в стандартном режиме.
    Ежеквартальный журнал для пользователей QNXNews верстается в Venture Publisher 4.1 и CorelDRAW 4.1 под Rundos. Ряд программных пакетов различных фирм позволяют эксплуатировать компьютер с QNX как файл-север для станций DOS, QNX-станции использовать сервер Netware и даже делать DOS-станцию узлом QNX-сети. Отсутствие тяжеловесов мира баз данных, скорее всего, временное явление. Высокопроизводительная файловая система,распределенность и встроенная поддержка архитектуры клиент-север делают OS QNX очень удобной платформой для баз данных. Для QNX существует десяток баз данных и среди них наиболее известны Watcom SQL, Empress и FairCom


    НЕДОСТАТКИ.
    Отсутствие виртуальной памяти может доставить неудобства, но виртуальная память у системы РЕАЛЬНОГО ВРЕМЕНИ, это как дозаправка ракеты в полете. Для некоторых приложений, использующих QNX как универсальную OS, этот механизм будет нелишним. Стараясь создать все условия для переноса все большего числа UNIX-программ в среду QNX, QNX Software намерена в ближайшее время предоставить механизм виртуальной памяти.
    Ни о какой многопроцессорности не было и речи пока фирма Intel не стандартизировала подобные платформы. Многопроцессорный вариант OS QNX не заставит себя долго ждать, этому должна способствовать технология микроядра.
    OS QNX работает только на процессорах Intel и его клонах. По неоднократным заявлениям представителей QNX Software, операционная система QNX может быть перенесена только на тот процессор, который докажет свою коммерческую привлекательность.
    Словом, придерживаясь ультра-прогрессивных взглядов на внутреннюю жизнь операционных систем, во «внешней политике» QNX Software проводит линию здорового консерватизма.



    QNX-СТАТИСТИКА.
    Платформа : ISA, EISA, MCA, VLB, PCI, PC/104, STD, STD32, VME
    Процессор : 386/486/Pentium - 32-x битная версия, 286 - 16-ти битная версия;
    Память :
    640 Kb - система периода выполнения;
    2 Mb - система разработки;
    Дисковое пространство:
    нет - для станций с сетевой загрузкой;
    5 Mb - OS и утилиты +4 Mb - система разработки
    Сетевые стандарты :
    Arcnet, TCNS, Ethernet, FDDI
    Графические стандарты :
    OPEN Look, Motif



    ПОЧЕМ QNX ДЛЯ НАРОДА.

    Самый волнующий вопрос: а сколько это стоит? Ценовая политика QNX Software очень интересна и распространяется почти на все программные продукты для OS QNX. Вы покупаете один раз в жизни дистрибутив операционной системы и с ним стартовую лицензию за 1590 DM. Далее, при необходимости, можно докупать лицензии пакетами по 4 за 1390 DM. Что составит стоимость OS QNX, при покупке 5 узлов, 596 DM на узел сети. При покупке 9 узлов - 485 DM на узел и т.д. И учтите, что связать большее число станций, чем у вас есть лицензий, OS QNX вам не разрешит. QNX можно покупать по частям: если вас не интересуют какие-то модули операционной системы (например набор утилит), то вы можете их не приобретать. Цены для учебных заведений минимальны и комментировать их не имеет смысла: 300 DM начальная лицензия и 50 DM пакет из 4-х лицензий.
    Еще одна проблема для российского пользователя - где получить квалифицированную консультацию. Официальным дистрибьютером OS QNX на территории России является российский филиал немецкой фирмы «SW Datentechnik»- «SWD Real Time Systems» [т. (812) 293-02-60], находящийся в г.Санкт-Петербурге. Сотрудники этой фирмы, наряду с аспространением OS QNX и программным обеспечением для нее, ведут собственные разработки и всегда открыты для обмена информацией. Проводимая ежегодно в Санкт-Петербурге конференция пользователей OS QNX с участием представителей QNX Software Systems и «SW Datentechnik» на самом высоком уровне представляется прекрасным местом для установления личных контактов.



    А КОГО ЭТО ВООБЩЕ ИНТЕРЕСУЕТ?
    Во-первых, сверхтребовательных к характеристикам операционных систем промышленность, банки, связисты и военные. Во-вторых, учитывая заинтересованность первой группы и ее финансовые возможности, а также долгосрочные перспективы рынка PDA, OS QNX должна заинтересовать фирмы-производители инструментального и системного программного обеспечения. В-третьих, учебные заведения, которые могут использовать OS QNX не только в качестве прекрасного учебного материала по теории операционных систем, но и создавать на базе лабораторных, практических, курсовых и дипломных работ конкурентноспособные коммерческие продукты.



    ЗАКЛЮЧЕНИЕ.

    Естественно невозможно подробно рассказать о всех аспектах такой разносторонней операционной системы как QNX, но хотелось бы надеется, что эта публикация может кому-то найти решение, неразрешимых до этого, проблем. Быстро растущий интерес во всем мире подтверждает, что удачная концепция и реализация делают OS QNX 4.2 уникальной на рынке 32-х разрядных операционных систем по таким критериям как скорость, масштабируемость, распределенность и соответствие стандартам.


    Материал взят с сайта www.hackzone.ru
    Категория: Новости Интернета | Добавил: Sir_J (15.07.2010)
    Просмотров: 3605 | Комментарии: 2 | Рейтинг: 0.0/0
    Всего комментариев: 0
    Имя *:
    Email *:
    Код *:

    Copyright MyCorp ©2010 - 2024
    Сделать бесплатный сайт с uCoz