Организация взаимодействия между инструментальной и целевой системами

Целевая система QNX Neutrino, поставляемая в виде образа для VMware Player, сконфигурирована следующим образом:

􀂈 при загрузке возможен выбор образа qnxbasedma.ifs (с однопроцессорным инструментированным ядром) или qnxbasesmp.ifs (с инструментированным SMP-ядром);

􀂈 пароль пользователя root пустой;

􀂈 используется имя узла Qnet по умолчанию (localhost);

􀂈 задано автоматическое получение параметров IP-протокола (т. е. используется DHCP);

􀂈 целевой агент qconn стартует автоматически.

 

√ Задание

8. Загрузите ОСРВ QNX Neutrino на виртуальном компьютере.

Загрузчик позволит нам выбрать образ — qnxbasedma.ifs или qnxbasesmp.ifs. Поскольку компьютер с VMware у нас однопроцессорный, то нас устраивает загружаемый по умолчанию образ qnxbasedma.ifs. Выбор образа осуществляется кнопками клавиатуры со стрелками вверх-вниз, с нажатием клавиши <Enter> на нужном образе.

Итак, ОСРВ QNX Neutrino загрузилась, и мы видим заставку с полями для ввода имени пользователя и пароля.

 

√ Задание

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

10. Настройте статические IP-параметры.

Для этого нажмем кнопку Launch и выберем в стартовом меню элемент Configure | Network. Откроется окно TCP/IP Configuration, в котором есть три вкладки: Devices, Connections и Network.


Перейдем на первую из них. Вкладка Devices содержит столько секций, сколько сетевых адаптеров QNX Neutrino распознала при загрузке. Вкладка позволяет указать для логического интерфейса каждого из адаптеров то, каким образом выполнять настройку этого интерфейса — динамически (DHCP) или статически (Manual). Выберем Manual и укажем предложенные преподавателем IP-адрес данного интерфейса и маску подсети (рис. 2).

Рис. 2. Вкладка Devices окна TCP/IP Configuration

 


Вкладка Connections используется, когда соединение с сетью организуется через какой-либо последовательный интерфейс, например, через модем.

Рис. 3. Вкладка Network окна TCP/IP Configuration

Вкладка Network используется при необходимости обеспечить сетевое взаимодействие с компьютерами, находящимися вне нашей физической сети, т. е. не подключенными к нашему концентратору Ethernet. Выполним необходимые настройки (рис. 3). Как видно из рис. 3, были заданы следующие параметры:

􀂈 vmware_target. Это — имя целевой системы, используемое протоколом Qnet;

􀂈 IP-адрес шлюза Интернета (туда будут маршрутизироваться все пакеты, получатель которых отсутствует в нашей физической сети);

􀂈 список IP-адресов DNS-серверов – аналогично сетевым настройкам реального сетевого адаптера.

Нажимаем кнопку Apply (применить изменения). Целевая система готова к взаимодействию.

 

Если вы не используете VMware Player с готовым образом операционной системы, то не забудьте, что на целевой системе необходимо запустить программу-агент qconn.

 

√ Задание

11. На инструментальном компьютере запустите интегрированную среду разработки QNX Momentics IDE. В Windows для этого можно воспользоваться меню Пуск.

 

В запустившейся IDE необходимо открыть окно QNX SystemInformation. Для этого можно выбрать элемент меню Window |OpenPerspective | Other, в окне Open Perspective выбрать соответствующий элемент списка и нажать кнопку ОК.


В левой части открывшегося окна QNX System Information расположено представление Target Navigator. В нем можно щелкнуть правой кнопкой мыши и выбрать элемент меню New QNX Target. Откроется соответствующее диалоговое окно (рис. 4).

Рис. 4. Окно создания нового проекта "QNX Target System"

 


Заполним данные этого окна, указав корректный IP-адрес целевой системы и номер порта, который "слушает" агент qconn (значение по умолчанию — 8000). Так же укажите имя проекта "QNX Target on VMware" — просто, чтобы имя было немного осмысленным.

Рис. 5. Окно QNX System Information

 

Далее нажмем кнопку Finish. В каталоге, который IDE использует для хранения проектов (например — D:\QNX641\ide-4.6-workspace), создастся папка, названная по имени проекта (QNX TargetonVMware). Эта папка — и есть вновь созданный проект. Информация, которая хранится в файлах проекта — IP-адрес целевой системы и номер порта qconn.

Если все сделано правильно, то в окне представления Target Navigator появится целевая система "QNX TargetonVMware (vmware_target)". Узнаете то, что в скобках? Это имя целевой системы в сети Qnet.

Щелкнув на значке треугольника слева от имени целевой системы, мы увидим список процессов, выполняющихся на целевой системе (рис. 5).


В скобках указаны номера процессов. Кроме списка процессов доступна различная, другая информация о текущем состоянии целевой системы. Эта информация размещена в представлениях, которые относятся или ко всей целевой системе (System Summary, Target File System Navigator), или к тому процессу, который выбран в представлении Target Navigator (Process Information, Memory Information, Malloc Information).

Рис. 6. Представление Target File System Navigator

 

По умолчанию в окне QNX System Information открываются далеко не все представления. Оставшиеся доступны через меню Window | ShowView.

Представление Target File System Navigator (рис. 6) позволяет делать две важные вещи. Во-первых, копировать файлы из инструментальной системы на целевую и наоборот (в Windows-версии IDE это можно делать "перетаскиванием" мышью). Во-вторых, запускать приложения на целевой системе.

Запускать можно любые приложения, включая графические и интерактивные. Можете потренироваться и щелкнуть дважды на файле /bin/ksh — в открывшемся окне следует нажать кнопку ОК, при этом у вас будет возможность ввести аргументы командной строки. После запуска на целевой системе командного интерпретатора ksh в IDE появится представление Console, через которое можно работать с утилитой ksh интерактивно (можно выполнить команды ls, pidin, pwd и др.).

Что касается работы с графическими приложениями, запущенными на целевой системе, то и с ними можно работать. Для начала в окне TargetFileSystemNavigator щелкните правой кнопкой мыши на файле /etc/inetd.conf и выберите элемент меню Edit (редактировать). Отыщите в открывшемся файле следующую строку:

#phrelaystreamtcpnowaitroot /usr/bin/phrelayphrelay -x

Удалите символ # (это символ комментария) в начале строки и нажмите на панели инструментов кнопку Save(Сохранить) с пиктограммой в виде дискетки. Мы "раскомментировали" строку запуска сервера phrelay в файле конфигурации суперсервера inetd.


Теперь укажем inetd перечитать файл конфигурации /etc/inetd.conf. Для этого в представлении TargetNavigator выберем inetd, щелкнем правой кнопкой и выберем из меню элемент DeliverSignal (Послать сигнал). Затем выберем из списка сигнал SIGHUP и нажмем кнопку ОK. Теперь при получении запроса от "клиента phrelay" программа-суперсервер inetd запустит программу-сервер phrelay.

Рис. 7. Окно ввода параметров при запуске Phindows

 

"Клиент phrelay" — это программа phindows для доступа к рабочему столу Photon из Windows и программа phinx для доступа к рабочему столу Photon из Х Window System. Программа phindows запускается через меню Старт (входит в ту же группу программ, что и QNX Momentics IDE). При запуске открывается окно для ввода IP-адреса целевой системы QNX Neutrino, разрешение экрана удаленной системы и сессия Photon, к которой следует подключиться (рис. 7).

Обратите внимание, что установлен флажок Connectto Existing Photon Session. Если этого не сделать, то для нас будет создана новая сессия Photon — нам будет предоставлена отдельная копия рабочего стола, и мы будем запускать приложения Photon независимо от других пользователей Photon. А мы подключаемся к уже существующей сессии и будем работать с тем же рабочим столом, с которым работали при настройке сетевых параметров.


Разрешение экрана особой роли не играет. Если заданное вами значение соответствует настройкам удаленной системы, то окно Windows будет создано с размером, достаточным для того, чтобы в нем поместился рабочий стол Photon. Если, конечно, хватит размеров у вашего монитора. Чтобы параметры запомнились для следующего запуска Phindows, сначала нажмем кнопку Save (Сохранить) и только затем Connect (Подключить). Откроется Windows-окно, содержащее рабочий стол Photon целевой системы QNX Neutrino (рис. 8).

Рис. 8. Рабочий стол Photon целевой системы QNX Neutrino в окне Windows