KnigaRead.com/
KnigaRead.com » Компьютеры и Интернет » Программное обеспечение » Роб Кёртен - Введение в QNX/Neutrino 2. Руководство по программированию приложений реального времени в QNX Realtime Platform

Роб Кёртен - Введение в QNX/Neutrino 2. Руководство по программированию приложений реального времени в QNX Realtime Platform

На нашем сайте KnigaRead.com Вы можете абсолютно бесплатно читать книгу онлайн "Роб Кёртен - Введение в QNX/Neutrino 2. Руководство по программированию приложений реального времени в QNX Realtime Platform". Жанр: Программное обеспечение издательство -, год -.
Перейти на страницу:

# cd /usr/nto/x86

# ls -l bin/telnet dll/devn-ne2000.so dll/npi-ttcpip.so

-rwxr-xr-x 1 root root  71588 May 19 11:45 bin/telnet*

-rwxr-xr-x 1 root root 680928 May 19 11:05 dll/devn-no2000.so*

-rwxr-xr-x 1 root root  83765 Jun 02 06:39 dll/npi-ttcpip.so*

# cksum bin/telnet dll/devn-ne2000.so dll/npi-ttcpip.so

1574162245  71588 bin/telnet

3564123752 680928 dll/devn-ne2000.so

2582029317  83765 dll/npi-ttcpip.so

Это даст сотрудникам техотдела примерную картину дат, размеров и контрольных сумм ряда объектов, которые, возможно, связаны с проблемой. Отметьте строку «cd /usr/nto/x86» — она говорит, что я использую средства разработки в версии для x86.

Если у вас есть подозрение, что проблема может быть связана с особенностями платформы, вам, безусловно, следует указать ее название, торговую марку (brand) и соответствующие применяемые в ней чипсеты.

Также служба технической поддержки, как правило, требует описания конфигурации вашей системы — особенно когда есть подозрение, что проблема связана с недостатком памяти, лицензированием, и т.п. Вы должны попытаться дать полную информацию относительно объема установленной памяти, количестве выполняющихся процессов, приблизительной степени загрузки, и т.д:

Чем более подробную информацию вы предоставите, тем быстрее вам смогут помочь.

Если у вас бета...

Если вы используете бета-версию программного обеспечения (то есть вы подписаны на бета-программу QSSL), вся вышеперечисленная информация критична, потому ваши версии программного обеспечения, скорее всего, будут отличаться от официально выпущенных. Однако, имейте в виду, что в общем случае поддержка бета-версий по телефону в QSSL не предусмотрена, так что здесь единственный способ получить информацию — написать в телеконференцию или, если разработчик запрашивает прямой контакт с вами, поговорить с разработчиком напрямую.

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

Также, если вы обмениваетесь информацией с разработчиком, то имейте в виду, что у него, как правило, есть еще тысяча дел, и он вряд ли сможет ответить на ваш запрос сразу. Дружеский «ping» спустя несколько дней молчания делу не повредит, а вот повторное требование ответа через 15 минут после запроса определенно не прибавит вам новых друзей.

Что часто проявляется при работе с бета-версиями, так это то, что люди забывают ставить обновления. Механизм же бета-тестирования работает так, что пропуск обновления запросто может заставить вашу систему вести себя странновато. Некоторые новые драйверы или администраторы ресурсов могут вести себя со своими клиентами совершенно иначе, чем в предыдущих версиях.

В этом случае вы должны быть уверены (потому что вас обязательно спросят!), что все обновления установлены, и в нужном порядке.

Воспроизведите проблему

Один из первых вопросов персонала технической поддержки обычно звучит так: «А оно происходит исключительно с бухты-барахты, или вы можете это повторить намеренно?»

Это не праздное любопытство. Если проблема проявляется редко, она столь же серьезна, как и проблема, которая проявляется регулярно. Главное — понять, с какой стороны подойти.

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

Если проблемная ситуация легко воспроизводится, то технический персонал захочет воспроизвести ее на месте, чтобы продемонстрировать разработчику на «живой» системе. «Смотри-ка! Все умирает, стоит мне сде…»

Сузьте круг поиска

Даже если проблема воспроизводима, персонал технической поддержки, скорее всего, не будет в восторге от перспективы переворошить 6000 строк вашей Си-кода в поисках затаившейся в его недрах ошибки.

В большинстве случаев, которые мне доводилось видеть, местоположение ошибки можно было сузить примерно до 20–30 строк максимум. Большие файлы могут быть действительно полезны для анализа в тех случаях, когда вы подозреваете, что ошибка связана с размерами объектов, а не с библиотеками или ядром. Например, у некоторых утилит может быть задан размер массива по умолчанию, и попытка увеличить его размер ведет к проблеме. В этом случае персонал технической поддержки может запросить у вас tar-архив, в котором содержится все. К счастью, создавать tar-архивы несложно. Например, если каталог вашего проекта называется /src/projects/xyzzy, и техперсонал хочет посмотреть все, что там находится, вы можете сделать следующее:

# cd /src/projects

# tar cvf xyzzy.tar xyzzy

Это «высосет» все содержимое каталога xyzzy (включая все подкаталоги!) в файл с именем xyzzy.tar. Если результирующий tar-файл получится большим, вы сможете сэкономить время на его загрузку и место на диске, если сожмете его с помощью утилиты gzip:

# gzip -9v xyzzy.tar

xyzzy.tar: 60.2% — replaced with xyzzy.tar.gz

Вы сможете затем переслать полученный файл xyzzy.tar.gz персоналу техподдержки (лучше, конечно, по FTP, чем электронным письмом :-).

Как сообщить об ошибке

Если вы убеждены в том, что нашли ошибку (например, утилита «падает» по SIGSEGV), вы можете не выставлять ее на всеобщее обсуждение в телеконференцию, а напрямую сообщить об ошибке в QSSL при помощи команды bug на QUICS. (Этот способ также устарел. Теперь для сообщения об ошибках используется специальная веб-форма на QDN — http://qdn.qnx.com/report/problem_report.htmlприм. ред.)

Другие источники информации

Кроме QUICS, существует ряд других информационных ресурсов, куда можно обращаться за помощью, информацией или услугами. Ниже приведен далеко не полный список, но по крайней мере у вас будет с чего начать.

www.qnx.com

Веб-сайт компании QSSL, особенно его раздел техподдержки (qdn.qnx.comприм. ред.), наполнен полезной информацией и файлами.

comp.os.qnx

Это обычная телеконференция USENET. Она была создана для пользователей QNX, чтобы они могли вместе обсуждать проблемы, особенности, решения, и т.п.

Персонал QSSL не всегда следит за этой конференцией (хотя некоторые там все-таки прячутся). Вообще это конференция для тех, у кого есть вопросы, но нет продуктов QNX. В эту конференцию периодически вывешивается сборник ЧаВо (Часто задаваемые Вопросы, или Frequently Asked Questions — FAQ — прим. ред.), из которого можно узнать много полезного о продуктах.

Если вам нужен гарантированный ответ, то лучшим выбором была и остается QUICS.

Каталог «третьих» фирм — продукты и консалтинг

Компания QSSL издает Каталог «третьих» фирм (Third Party Directory), в котором перечислены все сторонние компании и их продукты для QNX (например, многопортовые платы последовательного интерфейса, аппаратные средства стандарта X.25, программное обеспечение), а также представлен список организаций и лиц, оказывающих консалтинговые услуги при разработке проектов.

Данный каталог доступен от QSSL, для получения копии обращайтесь к своему торговому представителю.

QNXnews

Компания QSSL издает ежеквартальный журнал, называемый QNXnews. Он содержит статьи о заказчиках компании QSSL, примеры применения ими QNX в своих продуктах и решениях, а также объявления от QSSL и «третьих» фирм о новых продуктах и услугах.

Подписка на этот журнал также доступна в QSSL. Обращайтесь к вашему торговому представителю для получения дополнительной информации

Обучение

И, наконец, некоторые компании предлагают курсы обучения по программным продуктам QNX — за подробностями обращайтесь в отдел обучения QSSL

Глоссарий

Neutrino

Цитата из веб-странички сайта Обсерватории по изучению нейтрино, расположенной в Садбери (Sudbury Neutrino Observatory) (см. http://www.sno.phy.gueensu.ca):

«Нейтрино — это мельчайшие, возможно невесомые, нейтральные элементарные частицы, которые взаимодействуют с веществом через слабые ядерные силы взаимодействия. Незначительность этих сил взаимодействия наделяет нейтрино свойством свободного прохождения через вещество — говорят, что материя является почти прозрачной для нейтрино. Солнце и все другие звезды в результате процессов синтеза и распада в пределах ядра генерируют мощные потоки нейтрино. Поскольку нейтрино взаимодействуют редко, они проникают через Солнце и Землю (и вас) беспрепятственно. Другими источниками нейтрино являются взрывающиеся звезды (сверхновые), реликтовые нейтрино (от рождения вселенной) и атомные электростанции (при работе которых много энергии топлива уносится потоком нейтрино). Например, Солнце генерирует более чем две сотни триллионов триллионов триллионов нейтрино каждую секунду, а взрыв сверхновой может выдать поток нейтрино в тысячи раз больше, чем наше Солнце, которое произведет его в течение всех 10 миллиардов лет своей жизни. Поток в миллиарды нейтрино каждую секунду пронизывает Ваше тело и всего только одна или две частицы из частиц с наибольшей энергией рассеиваются в Вас за всю Вашу жизнь.»

Перейти на страницу:
Прокомментировать
Подтвердите что вы не робот:*