The OpenNET Project / Index page

[ новости /+++ | форум | теги | ]

форумы  помощь  поиск  регистрация  майллист  вход/выход  слежка  RSS
"нужна помощь по отладке (glibc)"
Вариант для распечатки  
Пред. тема | След. тема 
Форумы Программирование под UNIX (Public)
Изначальное сообщение [ Отслеживать ]

"нужна помощь по отладке (glibc)"  
Сообщение от dennisfen email(ok) on 22-Сен-08, 13:55 
Доброго времени суток!
Очень нужна помощь в отладке приложения. Точнее совет. Суть проблемы: имеется простое приложение на С, в котором есть функция read(), которая читает данные из последовательного порта. Необходимо получить список всех вызовов, которые происходят с момента вызова этой функции. Пробовал jump into в Eclipse CDT, но почему-то для этой функции исходники не находятся средой(они установлены).
Высказать мнение | Ответить | Правка | Cообщить модератору

 Оглавление

Сообщения по теме [Сортировка по времени | RSS]


1. "нужна помощь по отладке (glibc)"  
Сообщение от NuINu (??) on 22-Сен-08, 14:05 
>Доброго времени суток!
>Очень нужна помощь в отладке приложения. Точнее совет. Суть проблемы: имеется простое
>приложение на С, в котором есть функция read(), которая читает данные
>из последовательного порта. Необходимо получить список всех вызовов, которые происходят с
>момента вызова этой функции. Пробовал jump into в Eclipse CDT, но
>почему-то для этой функции исходники не находятся средой(они установлены).

Пардон, список каких вызовов вы хотите получить? системных?
если до момента окончания read то один, этот. если до какого то другого то смотрите strace

Высказать мнение | Ответить | Правка | Наверх | Cообщить модератору

2. "нужна помощь по отладке (glibc)"  
Сообщение от vic (??) on 22-Сен-08, 14:13 
>>Доброго времени суток!
>>Очень нужна помощь в отладке приложения. Точнее совет. Суть проблемы: имеется простое
>>приложение на С, в котором есть функция read(), которая читает данные
>>из последовательного порта. Необходимо получить список всех вызовов, которые происходят с
>>момента вызова этой функции. Пробовал jump into в Eclipse CDT, но
>>почему-то для этой функции исходники не находятся средой(они установлены).
>
>Пардон, список каких вызовов вы хотите получить? системных?
>если до момента окончания read то один, этот. если до какого то
>другого то смотрите strace

Другими словами read() - системный вызов (man syscalls).

Высказать мнение | Ответить | Правка | Наверх | Cообщить модератору

3. "нужна помощь по отладке (glibc)"  
Сообщение от dennisfen email(ok) on 22-Сен-08, 14:13 
>>Доброго времени суток!
>>Очень нужна помощь в отладке приложения. Точнее совет. Суть проблемы: имеется простое
>>приложение на С, в котором есть функция read(), которая читает данные
>>из последовательного порта. Необходимо получить список всех вызовов, которые происходят с
>>момента вызова этой функции. Пробовал jump into в Eclipse CDT, но
>>почему-то для этой функции исходники не находятся средой(они установлены).
>
>Пардон, список каких вызовов вы хотите получить? системных?
>если до момента окончания read то один, этот. если до какого то
>другого то смотрите strace

Прошу прощения, наверное не очень ясно выразился. Мне нужно получить список функций, которые вызываются _внутри_ read() и т.д. по нарастающей.

Высказать мнение | Ответить | Правка | Наверх | Cообщить модератору

4. "нужна помощь по отладке (glibc)"  
Сообщение от Fuzzy (ok) on 22-Сен-08, 14:26 
>Прошу прощения, наверное не очень ясно выразился. Мне нужно получить список функций,
>которые вызываются _внутри_ read() и т.д. по нарастающей.

Не проще посмотреть исходники glibc?

Высказать мнение | Ответить | Правка | Наверх | Cообщить модератору

5. "нужна помощь по отладке (glibc)"  
Сообщение от dennisfen email(ok) on 22-Сен-08, 14:33 
>>Прошу прощения, наверное не очень ясно выразился. Мне нужно получить список функций,
>>которые вызываются _внутри_ read() и т.д. по нарастающей.
>
>Не проще посмотреть исходники glibc?

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

Высказать мнение | Ответить | Правка | Наверх | Cообщить модератору

6. "нужна помощь по отладке (glibc)"  
Сообщение от Fuzzy (ok) on 22-Сен-08, 14:35 
Подозреваю что там используется ioctl().

Высказать мнение | Ответить | Правка | Наверх | Cообщить модератору

9. "нужна помощь по отладке (glibc)"  
Сообщение от NuINu (??) on 22-Сен-08, 15:12 
>[оверквотинг удален]
>>
>>Не проще посмотреть исходники glibc?
>
>к сожалению нет=( дело в том, что в конечном итоге мне хочется
>получить список функций стандартного tty драйвера, которыми пользуется драйвер моего PCI-RS422
>контроллера. Я понимаю, что все очень запутанно, но все же...Я с
>радостью приму любой совет по поводу того, как мне получить-таки список
>этих функций. Ковыряние в исходниках не помогло - слишком большое количество
>файлов, да и половина функций там явлются обертками для других функций
>и т.д.

а что собственно говоря вы смотрели? вам надо исходники ядра смотреть. список функций которые выполняет драйвер не очень большой.

Высказать мнение | Ответить | Правка | Наверх | Cообщить модератору

8. "нужна помощь по отладке (glibc)"  
Сообщение от vic (??) on 22-Сен-08, 15:01 
>>Прошу прощения, наверное не очень ясно выразился. Мне нужно получить список функций,
>>которые вызываются _внутри_ read() и т.д. по нарастающей.
>
>Не проще посмотреть исходники glibc?

read() - системный вызов, его нет и не может быть в glibc.
при вызове read() процесс передает управление ядру. Дальше происходят внутренние вызовы ядра пока не дойдет до драйвера и вызова его функции объявленную как module_read().
ЗЫ в программировании ядра линуха не силен, но как-то так в общем. Но read() точно системный вызов =))

Высказать мнение | Ответить | Правка | Наверх | Cообщить модератору

10. "нужна помощь по отладке (glibc)"  
Сообщение от devcoder (ok) on 22-Сен-08, 15:23 
>Прошу прощения, наверное не очень ясно выразился. Мне нужно получить список функций,
>которые вызываются _внутри_ read() и т.д. по нарастающей.

См. исходники ядра, модуль serial,
ключевой файл, если не ошибаюсь, serio.c

Высказать мнение | Ответить | Правка | Наверх | Cообщить модератору

7. "нужна помощь по отладке (glibc)"  
Сообщение от devcoder (ok) on 22-Сен-08, 14:39 
> Необходимо получить список всех вызовов, которые происходят с
> момента вызова этой функции.

man strace


Высказать мнение | Ответить | Правка | Наверх | Cообщить модератору

11. "нужна помощь по отладке (glibc)"  
Сообщение от dennisfen email(ok) on 22-Сен-08, 16:09 
ок, спасибо, кое-что прояснили (по крайней мере информации к размышлению подкинули;))
Высказать мнение | Ответить | Правка | Наверх | Cообщить модератору

Архив | Удалить

Индекс форумов | Темы | Пред. тема | След. тема
Оцените тред (1=ужас, 5=супер)? [ 1 | 2 | 3 | 4 | 5 ] [Рекомендовать для помещения в FAQ]




Партнёры:
PostgresPro
Inferno Solutions
Hosting by Hoster.ru
Хостинг:

Закладки на сайте
Проследить за страницей
Created 1996-2024 by Maxim Chirkov
Добавить, Поддержать, Вебмастеру