Добавил:
Upload Опубликованный материал нарушает ваши авторские права? Сообщите нам.
Вуз: Предмет: Файл:
Лекции - Операционные системы.doc
Скачиваний:
12
Добавлен:
01.07.2025
Размер:
2 Мб
Скачать
☆

Контрольные вопросы:

  1. Расскажите об особенностях ОС Linux.

  2. Какие проблемы важны для Linux.

  3. Какой ОС является ОС FreeBSD

  4. Укажите основные различия между Linux и FreeBSD.

Лекция 14. Сетевая операционная система реального времени qnx

План:

  1. Сетевые ОС реального времени QNX и её особенности.

  2. Архитектура ОС QNX.

  3. Семейство ОС OS/2 Warp компоненты IBM.

  4. Особенности архитектуры и основные возможности (интерфейс).

Вспомним основные принципы, обязательная реализация которых позволяет со­здавать операционные системы реального времени (ОСРВ). Первым обязатель­ным требованием к архитектуре операционной системы реального времени явля­ется многозадачность в истинном смысле этого слова.

Операционная система QNX является мощной операционной системой, разрабо­танной для процессоров с архитектурой ia32. Она позволяет проектировать слож­ные программные комплексы, работающие в реальном времени как на отдельном компьютере, так и в локальной вычислительной сети. Встроенные средства QNX обеспечивают поддержку многозадачного режима на одном компьютере и взаимодействие параллельно выполняемых задач на разных компьютерах, работающих в среде локальной вычислительной сети. Таким образом, эта операционная система хорошо подходит для построения распределенных систем.

Основным языком программирования в системе является С. Основная операци­онная среда соответствует стандарту POSIX. Это позволяет с небольшими дора­ботками переносить ранее разработанное программное обеспечение в QNX для организации их работы в среде распределенной обработки.

Операционная система QNX, будучи сетевой и мультизадачной, в то же время яв­ляется многопользовательской (многотерминальной). Кроме того, она масштаби­руема. С точки зрения пользовательского интерфейса и интерфейса прикладного программирования она очень похожа на UNIX, поскольку выполняет требования стандарта POSIX. Однако QNX — это не версия UNIX, хотя почему-то многие так считают. Система QNX была разработана, что называется, «с нуля» канадской фирмой QNX Software Systems Limited в 1989 году по заказу Министерства оборо­ны США, причем на совершенно иных архитектурных принципах, нежели исполь­зовались при создании операционной системы UNIX.

QNX была первой коммерческой операционной системой, построенной на прин­ципах микроядра и обмена сообщениями. Система реализована в виде совокупно­сти независимых (но взаимодействующих путем обмена сообщениями) процессов различного уровня (менеджеры и драйверы), каждый из которых реализует опре­деленный вид услуг. Эти идеи позволили добиться нескольких важнейших пре­имуществ. Вот как об этом написано па сайте, посвященном операционной систе­ме QNX [14].

□ Предсказуемость означает применимость системы к задачам жесткого ре­ального времени. QNX является операционной системой, которая дает пол­ную гарантию того, что процесс с наивысшим приоритетом начнет выпол­няться практически немедленно, и критически важное событие (например, сигнал тревоги) никогда не будет потеряно. Ни одна версия UNIX не может достичь подобного качества, поскольку нереентерабельный код ядра слиш­ком велик. Любой системный вызов из обработчика прерывания в UNIX может привести к непредсказуемой задержке (то же самое можно сказать про Windows NT).

  • Масштабируемость и эффективность достигаются оптимальным использова­нием ресурсов и означают применимость QNX для встроенных (embedded) си­стем.

  • Расширяемость и надежность обеспечиваются одновременно, поскольку напи­санный драйвер не нужно компилировать в ядро, рискуя вызвать нестабиль­ность системы.

  • Быстрый сетевой протокол FLEEV прозрачен для обмена сообщениями, авто­матически обеспечивает отказоустойчивость, балансирование нагрузки и мар­шрутизацию между альтернативными путями доступа.

□ Компактная графическая подсистема Photon, построенная на тех же принци­пах модульности, что и сама операционная система, позволяет получить пол­нофункциональный интерфейс GUI (расширенный интерфейс Motif), работа­ющий вместе с POSIX-совместимой операционной системой всего в 4 Мбайт памяти, начиная с i80386 процессора.

Архитектура системы QNX

Итак, QNX — это операционная система реального времени для персональных компьютеров, позволяющая эффективно организовать распределенные вычисле­ния. В системе реализована концепция связи между задачами на основе сообще­ний, посылаемых от одной задачи к другой, причем задачи эти могут решаться как на одном и том же компьютере, так и на разных, но связанных между собой ло­кальной вычислительной сетью. Реальное время и концепция связи между про­цессами посредством сообщений оказывают решающее влияние и на разрабатывае­мое для операционной системы QNX программное обеспечение, и на программиста, стремящегося с максимальной выгодой использовать преимущества системы. Микроядро операционной системы QNX имеет объем всего в несколько десятков килобайтов (в одной из версий — 10 Кбайт, в другой — менее 32 Кбайт, хотя есть вариант и на 46 Кбайт), то есть это одно из самых маленьких ядер среди всех суще­ствующих операционных систем. В этом объеме помещаются:

□ механизм передачи сообщений между процессами IPC (Inter Process Communication — взаимодействие между процессами);

□ Редиректор (redirector) прерываний;

  • блок планирования выполнения задач (иначе говоря, диспетчер задач);

сетевой интерфейс для перенаправления сообщений (менеджер Net).

Основные механизмы организации распределенных вычислений

QNX является сетевой операционной системой, которая позволяет организовать эффективные распределенные вычисления. Для этого на каждой машине, называемой узлом, помимо ядра и менеджера процессов должен быть запущен уже упо­мянутый ранее менеджер Net. Менеджер Net не зависит от аппаратной реализа­ции сети. Эта аппаратная независимость обеспечивается за счет сетевых драйверов. В операционной системе QNX имеются драйверы для сетей с различными техно­логиями: Ethernet и FastEthernet, Arcnet, IBM Token Ring и др. Кроме того, имеет­ся возможность организации сети через последовательный канал или модем.

Семейство операционных систем OS/2

Warp компании IBM

История появления, расцвета и практического ухода со сцены операционных сис­тем под общим названием OS/2 и странна, и поучительна. Будучи одной из самых лучших операционных систем для персональных компьютеров по очень большо­му числу параметров и появившись существенно раньше систем своих основных конкурентов, она тем не менее не смогла стать самой распространенной, хотя мог­ла бы, и с легкостью. Основная причина тому — законы бизнеса (умение реклами­ровать свой товар, всячески поддерживать его продвижение, вкладывать деньги в завоевание рынка), а не качество самой операционной системы. Во-первых, ком­пания IBM не сочла необходимым продвигать свою операционную систему на ры­нок программного обеспечения, ориентированного на конечного пользователя, а решила продолжить свою практику работы исключительно с корпоративными клиентами. А этот рынок (корпоративного программного обеспечения) оказался существенно уже для персональных компьютеров, чем рынок программного обес­печения для конечного пользователя, ибо компьютеры типа IBM PC прежде всего являются персональными. Во-вторых, основные доходы компания IBM получала не от продажи системного программного обеспечения для персональных компью­теров, а за счет продаж дорогостоящих серверов и другого оборудования. Доходы от продажи операционной системы OS/2 не представлялись руководству компа­нии IBM значимыми. Чтобы добиться успеха на рынке операционных систем для персональных компьютеров, необходимо было обеспечить всестороннюю поддер­жку своей системы соответствующей учебной литературой, широкой рекламой, заинтересовать разработчиков программного обеспечения. Увы, этого сделано не было, и сегодня уже практически мало кто знает о системах семейства OS/2. В то же время следует отметить, что те организации и предприятия, которые в свое время освоили эту систему и создали для нее соответствующее прикладное про­граммное обеспечение, до сих пор не переходят на ныне чрезвычайно популяр­ные операционные системы Windows NT/2000/XP, поскольку последние требу­ют существенно больше системных ресурсов.

Все последние версии операционной системы OS/2 в своем названии имеют слово Warp, что переводится с английского как «основа». Операционная система OS/2 Warp 4.0 практически представляет собой OS/2 Warp 3.0 (вышедшую еще в 1994 году) с несколько улучшенной поддержкой DOS-задач и обновленными элементами объектно-ориентированного интерфейса. Для этой системы характерны:

  • вытесняющая многозадачность (preemptive multitasking) и поддержка DOS-и Windows- (Win32s1) приложений;

  • по-настоящему интуитивно понятный и действительно удобный объектный пользовательский интерфейс;

□ поддержка стандарта открытого объектного документооборота OpenDoc;

□ поддержка стандарта OpenGL;

□ поддержка Java-апплетов и встроенных средств разработки на языке Java; □ поддержка шрифтов True Type (TTF);

□ управление голосом без предварительной подготовки (технология Voice Type);

□ полная поддержка сетевых технологий Интернет/интранет, доступ в сети Com­puServe2;

□ средства построения одноранговых сетей и клиентские части для сетевых опе­рационных систем IBM LAN Server, Windows, Lantastic, Novell Netware 4.1 (в том числе поддержка службы каталогов);

□ система удаленного доступа через модемные соединения;

  • файловая система Mobile File System для поддержки мобильных пользовате­лей;

  • стандарт автоматического распознавания аппаратных устройств (Plug-and-Play), но без столь навязчивого механизма, который реализован в Windows;

□ набор офисных приложений' (балы данных, электронные таблицы, текстовый процессор, генератор отчетов, деловая графика, встроенная система приема-передачи факсимильных сообщений, информационный менеджер);

□ полная поддержка мультимедиа, включая средства работы с видеокамерой, рас­ширенную систему помощи WarpGuide. Однако наиболее заманчивы не перечисленные из рекламного буклета возможно­сти системы, а удобная и надежная для работы с корпоративными базами данных и в сетях среда, предоставляющая клиентское рабочее место.

Чрезвычайно важным для пользователей является тот факт, что компания IBM для всех версий своей операционной системы регулярно выпускает пакеты обнов­ления (FixPak). Эти пакеты исправляют обнаруженные ошибки, а также вносят новые функции.

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

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

Наиболее сильное впечатление при работе в операционной системе OS/2 оставля­ет объектно-ориентированный графический пользовательский интерфейс, а осо­бой популярностью у программистов эта система пользовалась вследствие очень хорошей организации VDM-машин и высокого быстродействия при выполнении обычных DOS-приложений.

Контрольные вопросы

1 Изложите основные архитектурные особенности операционных систем семей­ства UNIX. Попробуйте объяснить основные различия между системами UNIX и Windows.

  1. Перечислите и поясните основные понятия, относящиеся к UNIX-системам.

  2. Что делает системный вызов fork()? Каким образом осуществляется в опера­ционных системах семейства UNIX запуск новой задачи?

4. Расскажите об операционной системе Linux. Какие проблемы, на ваш взгляд, наиболее важны для Linux? Расскажите об основных различиях между Linux и FreeBSD.

5. Что представляет собой X-Window? Что такое оконный менеджер? Какие окон­ные менеджеры для операционной системы Linux вы знаете?