Добавил:
Опубликованный материал нарушает ваши авторские права? Сообщите нам.
Вуз: Предмет: Файл:
ПОУК / 09 семестр / Книги и методические указания / Руководство программиста в Photon.doc
Источник:
Скачиваний:
364
Добавлен:
04.03.2014
Размер:
7.99 Mб
Скачать

Графика

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

BIOS ROMs

Поскольку многие переключатели режимов, поддерживаемые в Photon'е, требуют видеоBIOS для переключения графических режимов, возможно потребуется наличие BIOS'а на материнской плате. Справьтесь в QNX Software Systems по поводу того, доступна ли не BIOS-версия.

Текстовый режим

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

Видеообласть

Память RAM можно сделать непрерывной, поскольку драйверы Photon'а не ограничены месторасположением видеообласти (напр., 0хА000). Вы можете разместить видеобуфер в любом месте памяти.

Различные проблемы

Вот ещё несколько замечаний по разным поводам:

Скорость процессора

В определённых встроенных системах производительность процессора будет ниже, чем в настольных системах. Вам надо учитывать это при разработке приложений Photon'а для встраиваемой среды.

Прокрутка

Если при щелчке на жёлоб прокрутки область прокрутки пролистывается вниз более чем на одну страницу, попробуйте увеличить значение задержки повтора мыши в Photon'е. Например:

Photon -D1000 &

Ввод

Вы можеет установить параметры синхронизации передачи данных и для ввода и для сервера Photon'а. Путём снижения скорости генерирования событий мыши Вы можете уменьшить траффик через систему Photon'а. На медленных 386 и 486 платформах общепринятой практикой является снижение дросселирования ввода с 10 до 20 мс.

Phindows и Phditto

Если разрабатываемое Вами приложение требует поддержки удалённой диагностики с помощью Phindows или phditto, Вам может понадобиться установить phrelay, библиотеку визуализации и файл конфигурирования служб.

Пример

Давайте рассмотрим шаги, связанные со встраиванием Photon'а для использования в неком встраиваемом устройстве. Нашей целью является построение системы Photon со следующими минимальными возможностями:

  • Масштабируемые TrueType шрифты – наименьший доступный набор, включающий обычный шрифт, наклонный и жирный наклонный.

  • Совершеннейший минимум, необходимый для работы графического драйвера под чипсет RageLT.

  • Необязательные мышь/клавиатура – мы должны быть в состоянии запускать и останавливать эту службу по мере надобности.

  • Необязательный оконный менеджер – мы должны быть в состоянии запускать и останавливать эту службу по мере надобности.

Встраивание Photon'а требует анализа ряда положений:

  • Требуемые бинарные файлы

  • Требуемые библиотеки (.so)

  • Требуемые шрифты

  • Требуемые серверы

  • Размещение их всех вместе

  • Полезные подсказки

Требуемые бинарные файлы

Первый шаг затрагивает проверку полной системы. Запустите Photon на Вашем компьютере.

Прсмотрите вывод команды pidin arg. Это вывод в Gateway Laptop, выбирающий для показа только компоненты, относящиеся к Photon'у:

pidin ar

pid Arguments

3620894 Photon

3665951 fontsleuth -d /usr/photon/font_repository

3727406 pwm

3657775 /usr/photon/bin/phfontFA -d /usr/photon/font_repository -j -s 300k

3698736 io-graphics -g1024x768x32 -dldevg-rage.so -I0 -d0x1002,0x4c42

3715121 devi-hirun kbd fd -d/dev/kbd ps2 kb -2

3772466 shelf

3809331 bkgdmgr

3809332 wmswitch

3809336 Xphoton -once

3809337 gtwm

Нам нужны только несколько программ:

  • Photon

  • phfontFA – см. обсуждение шрифтов ниже

  • io-graphics

  • pwm – только если нам нужно обслуживание оконного менеджера

  • devi-hirun – только если нам нужны мышь или клавиатура (или чувствительный к прикосновению экран); см. раздел "Драйверы ввода (devi-)" в сводке "Справочника утилит QNX Neutrino".

Для большинства встраиваемых систем другие компоненты являются совершенно необязательными:

fontsleuth

используется для автоматической установки шрифтов

shelf

Для "быстрого запуска" приложений. Она создаёт "полку" (по умолчанию по правой стороне экрана) для приложений, которые Вы можете запускать

bkgdmgr

Для рисования фоновой картинки экрана

wmswitch

Работает с pwm для обработки переключений между приложениями при нажатии Alt-Tab

Xphoton

Для запуска Х-приложений

gtwm

Xphoton-овский оконный менеджер

Сохраните список аргументов для Вашей системы в файле. Он нам позднее понадобится.