Официальный форум СВД Встраиваемые Системы
10 Декабря, 2016, 07:59:14 *
Добро пожаловать, Гость. Пожалуйста, войдите или зарегистрируйтесь.

Войти
 
 
 Сайт СВД ВС  Начало   Помощь Поиск Войти Регистрация  
Страниц: [1]   Вниз
  Печать  
Автор Тема: Отладка процессов на целевой системе по COM-порту  (Прочитано 1429 раз)
pazitivv
Интересующийся

Сообщений: 4


« : 18 Января, 2013, 09:57:24 »

Добрый день!
Нужна помощь чайнику Roll Eyes
Имеется целевая система на платформе PowerPC, основанная на QNX 6.4.0. На ней отладчик gdb_pdebug.
Имеется QNX Momentics на системе разработчика - платформа Intel.
Задача:
Отладить процессы на целевой системе по COM порту (используя дебаггер gdb_pdebug - наалог pdebug), в связи с этим вопрос - могу ли я удаленно подключиться к работающему процессу и отладить его (поставить контрольные точки и получить трассу выполнения)?

Из описания я выполняю следующие команды (из руководства)

# ls /dev/ser*
/dev/ser1    /dev/ser2


# devc-pty &
[1] 20877372


# gdb_pdebug
Usage:  To debug a running process: gdb_pdebug [-DP] -p pid
        To load and debug an image: gdb_pdebug [-DP] imagename [args ...]
        -D device_pathname[:baud]
        -P [0|1]

# gdb_pdebug -D /dev/ser1:9600 tftp_server
tcgetpgrp faild (fd = 3),  Inappropriate I/O control operation
tcsetpgrp faild (fd = 3),  Inappropriate I/O control operation


Хотя при этом данные с COM1 видны:
# cat </dev/ser1
amc


Вот тут я не знаю что должно получиться, но судя по всему - ошибка ввода/вывода.
2 вопроса:
1. что я делаю не так?
2. Смогу ли с платформы intel отладить программы на платформе Powerpc?
Записан
Владимир Махилёв
Сотрудник СВД ВС
Ветеран

Сообщений: 659



WWW
« Ответ #1 : 18 Января, 2013, 15:56:40 »

Здравствуйте!

Отвечу сразу на второй вопрос - да, отладка через последовательной порт должна работать.

Начните со штатных средств отладки, т.е. программы pdebug.

Также, на всякий случай сразу отмечу, что возможен вариант с организацией сети поверх последовательного канала. Для этого используется драйвер devn-fd, потребуется реальная или виртуальная машина с QNX и корректная настройка маршрутизации. Такой подход сложнее чем pdebug в настройке, но позволит организовать сеть TCP/IP и иметь полный функционал для управления и отладки через qconn. Также, поскольку вы хотите использовать нестандартные средства для отладки то, возможно, настройка сети TCP/IP позволит использовать и их.




Записан

pazitivv
Интересующийся

Сообщений: 4


« Ответ #2 : 23 Января, 2013, 09:53:12 »

Вернемся к вопросу.
Сейчас решил попробовать отлаживать процессы на целевой системе - QNX 6.5 по серийному порту.
Ситуация следующая:
на QNX запущены процессы, мне надо их отладить (поставить контрольные точки на адреса, дальше их запустить и получить трассу вызовов).
Теперь опишу стенд:
2 компьютера соединены между собой по COM-порту. На первом установлена windows, на ней виртуалка BackTrack на основе Ubuntu. Весь софт и подключение осуществляется с виртуалки. На ней установлен QNX Momentics и gdb.
Целевая система - QNX 6.5 под интел.
Машины видят друг друга по COM-порту.
Вопрос все тот же - как отладить по COM-порту процессы, запущенные на QNX.

Что я делаю:
1. Настраиваю target в соответствии с  инструкцией (раздел Serial communications).
Привожу скриншоты:
1. Настройка целевой системы:
http://pixs.ru/showimage/1JPG_6542624_6897277.jpg
2. Попытка подключения по COM-порту с использованием QNX Momentics:
http://pixs.ru/showimage/2JPG_3886106_6897354.jpg
http://pixs.ru/showimage/3JPG_1176099_6897356.jpg
http://pixs.ru/showimage/4JPG_4761551_6897369.jpg

3. Попытка подключения с использованием gdb:
http://pixs.ru/showimage/5JPG_3815567_6897450.jpg

То что я вижу на target:
http://pixs.ru/showimage/6JPG_3156701_6897454.jpg


Что я делаю не так?
« Последнее редактирование: 23 Января, 2013, 09:55:30 от pazitivv » Записан
Алексей Ермолинский
Сотрудник СВД Встраиваемые Системы
Сотрудник СВД ВС
Пользователь

Сообщений: 44



WWW
« Ответ #3 : 23 Января, 2013, 15:33:36 »

После появления ошибки при запуске отладки из среды Momentics убедитесь на всякий случай, что в списке процессов на целевой машине все еще присутствует pdebug. Также может быть полезным запуск на целевой машине драйвера devc-ser8250 с опцией -F (отключить аппаратное управление потоком) и на машине с Windows также убедиться, что в диспетчере устройств управление потоком для нужного com-порта отключено.
Записан
Страниц: [1]   Вверх
  Печать  
 
Перейти в:  

Powered by MySQL Powered by PHP © 2002-2016 СВД Встраиваемые Системы.
При использовании материалов сайта ссылка на forum.kpda.ru обязательна.

Powered by SMF 1.1.21 | SMF © 2015, Simple Machines | © Aiwan. Kolobok smiles | Sitemap
Valid XHTML 1.0! Valid CSS!
Сайт СВД ВС

В последний раз google посещал эту страницу 15 Ноября, 2016, 18:45:31