- •Ю.Б. Гриценко
- •Учебное пособие
- •ТОМСК — 2009
- •Ю.Б. Гриценко
- •Учебное пособие
- •Гриценко Ю.Б.
- •ВВЕДЕНИЕ
- •1 ВВЕДЕНИЕ В ОПЕРАЦИОННЫЕ СРЕДЫ, СИСТЕМЫ И ОБОЛОЧКИ
- •1.1 Основные понятия
- •1.2 Классификация операционных систем
- •1.3 Классификация построений ядер операционных систем
- •1.4 Представление об интерфейсах прикладного программирования
- •1.4.1 Общие задачи и функции интерфейсов прикладного программирования
- •1.4.2 Варианты реализации интерфейсов прикладного программирования
- •1.4.3 Характеристики интерфейсов прикладного программирования на различных уровнях реализаций
- •1.4.4 Платформенно-независимый интерфейс POSIX
- •1.5 Основные принципы построения операционных систем
- •Вопросы для самопроверки
- •2 ОБЗОР ПОПУЛЯРНЫХ ОПЕРАЦИОННЫХ СИСТЕМ
- •2.1 Операционные системы фирмы Microsoft
- •2.1.2 Операционная система Windows 2000
- •2.1.3 Операционная система Windows XP
- •2.1.4 Операционная система Windows 2003 Server
- •2.1.5 Операционная система Windows Vista
- •2.1.6 Операционная система Windows 2008 Server
- •2.2 Операционные системы семейства Unix
- •2.2.1 История разработки систем UNIX
- •2.2.2 Примеры различных версий Unix
- •2.2.3 Программное обеспечение X Window
- •2.3 Операционная система OS/2
- •2.3.1 История разработки системы OS/2
- •2.3.2 Особенности архитектуры и интерфейса OS/2 Warp
- •2.3.3 Серверная операционная система OS/2 Warp 4.5
- •2.3.4 Эпоха eComStation
- •2.4 Операционные системы реального времени. Операционная система QNX
- •2.4.1 Общее представление об операционных системах реального времени
- •2.4.2 Особенности архитектура системы QNX
- •2.4.3 Основные механизмы QNX
- •Вопросы для самопроверки
- •3 ИНТЕРФЕЙСЫ ОПЕРАЦИОННЫХ СИСТЕМ
- •3.1 Интерфейс командной строки ОС Windows
- •3.2 Интерфейс командной строки ОС Unix
- •Вопросы для самопроверки
- •ГЛОССАРИЙ
- •СПИСОК ЛИТЕРАТУРЫ
- •КОНТРОЛЬНЫЕ РАБОТЫ
- •Контрольная работа № 1
- •Контрольная работа № 2
134
2.4.3 Основные механизмы QNX
QNX является сетевой операционной системой и позволяет организовать эффективные распределенные вычисления. Для организации сети на каждой машине, называемой узлом, помимо ядра и менеджера процессов должен быть запущен уже упомянутый нами выше менеджер Net. Менеджер Net не зависит от аппаратной реализации сети. Данная аппаратная независимость обеспечивается за счет использования сетевых драйверов. В QNX имеются драйверы для различных сетей, например Ethernet, Arcnet, Token Ring. Кроме этого, имеется возможность организации сети через последовательный канал или модем.
В QNX последней, четвертой, версии полностью реализовано встроенное сетевое взаимодействие «точка-точка». Например, находясь на машине А, пользователь может скопировать файл с гибкого диска, подключенного к машине В, на жесткий диск, подключенный к машине С. По существу, сеть из машин QNX действует как один мощный компьютер. Любые ресурсы (модемы, диски, принтеры) могут быть добавлены к системе простым их подключением к любой машине в сети. QNX поддерживает одновременную работу в сетях Ethernet, Arcnet, Serial
иToken Ring и обеспечивает более чем один-единственный путь для коммуникации, а также балансировку нагрузки в сетях. Если кабель или сетевая плата выходят из строя таким образом, что связь через сеть прекращается, то система будет автоматически перенаправлять данные через другую сеть. Это происходит в режиме «on-line», предоставляя пользователю автоматическую сетевую избыточность и увеличивая скорость коммуникаций во всей системе.
Каждому узлу в сети соответствует уникальный целочисленный идентификатор — логический номер узла. Любой поток в сети QNX имеет прозрачный доступ (при наличии достаточных привилегий) ко всем ресурсам сети, то же самое относится
ик взаимодействию потоков. Для взаимодействия потоков, находящихся на разных узлах сети, используются те же самые вызовы ядра, что и для потоков, выполняемых на одном узле. В том случае, если потоки находятся на разных узлах сети, ядро переадресует запрос менеджеру сети. Для организации обмена в
135
сети используется надежный и эффективный протокол транспортного уровня FLEET. Каждый из узлов может принадлежать одновременно нескольким QNX-сетям. В том случае, если сетевое взаимодействие может быть реализовано несколькими путями, для передачи выбирается незагруженная и более скоростная сеть.
Сетевое взаимодействие является узким местом в большинстве операционных систем и обычно создает значительные проблемы для систем реального времени. Для того чтобы обойти это препятствие, разработчики QNX создали собственную специальную сетевую технологию FLEET и соответствующий протокол транспортного уровня FTL (FLEET Transport Layer). Этот протокол не базируется ни на одном из распространенных сетевых протоколов типа IPX или NetBios и обладает рядом качеств, которые делают его уникальным. Основные его качества зашифрованы в аббревиатуре FLEET (http://support.qnx.com) и представлены в таблице 2.7.
Таблица 2.7 — Составляющие аббревиатуры «FLEET»
Название составляю- |
Содержание процесса |
щего процесса сетевой |
|
технологии FLEET |
|
Fault-Tolerant Net- |
QNX может одновременно использовать не- |
working |
сколько физических сетей. При выходе из |
|
строя любой из них данные будут автомати- |
|
чески перенаправлены «на лету» через дру- |
|
гую сеть |
Load-Balancing on the |
При наличии нескольких физических соеди- |
Fly |
нений QNX автоматически распараллеливает |
|
передачу пакетов по соответствующим сетям |
Efficient Performance |
Специальные драйверы, разрабатываемые |
|
фирмой QSSL для широкого спектра обору- |
|
дования, позволяют с максимальной эффек- |
|
тивностью использовать сетевое оборудова- |
|
ние |
Extensible Architecture |
Любые новые типы сетей могут быть под- |
|
держаны путем добавления соответствую- |
|
щих драйверов |