Page 1 of 1

Ваши способы отладки

Posted: Sun Jan 10, 2010 8:14 pm
by PhoSor
Начал писать драйвер для Колибри, но столкнулся с такой проблемой как отладка кода в ядре. Потратил N-ное количество времени в поиске различных решений этой проблемы. Нашлось некоторое количество недорешений, качество которых меня не устраивает. Птму прошу помощи у вас. Буду рад вашим советам, подсказкам.

Re: Ваши способы отладки

Posted: Sun Jan 10, 2010 8:52 pm
by tsdima
Как писал Serge, есть только вывод на доску отладки SysMsgBoardStr.

Re: Ваши способы отладки

Posted: Mon Jan 11, 2010 3:23 am
by art_zh
Разработку драйверов сложных и многофункциональных устройств имеет смысл начинать в пользовательском приложении, пользуясь для этого функциями 41-45 (работа с IRQ и портами в/в) и 62 (зона PCI + user MMIO).

В принципе, так можно довести до ума 80-90% кода (включая эмуляцию IOCTL!) в полноценном отладчике, а потом только вставить код в тело драйвера, плюс еще будет морока заменить все системные вызовы на обращение к экпортным функциям ядра.

Этот сервис еще очень новый и сыроватый, многое придется изобретать по ходу дела. Кроме того, даже наличие канала MMIO не дает приложению всего нужного драйверу инструментария. Например, DMA из приложения до сих пор запросить нельзя (хотя он туда тоже очень просится).

И все-таки отладка драйвера заметно упростится, если начинать ее в юзерспейсе.

Re: Ваши способы отладки

Posted: Mon Jan 11, 2010 3:46 pm
by G@K
Сам лично пользую доской отладки . Где-то давно читал , что можно для отладки использовать другой комп соединенный по COM порту. Можно попробовать настроить вирт.машину (bosh, quemu) соответствующим образом там есть такие команды.

Re: Ваши способы отладки

Posted: Tue Jan 12, 2010 12:11 pm
by diamond
Есть доска отладки, есть встроенный отладчик в эмуляторе Bochs, можно отлаживать связкой gdb+qemu. COM-порт может помочь только в том смысле, что можно настроить ядро так, что все сообщения на доску отладки будут дублироваться выводом в COM-порт (а ещё можно дописать несколько строк в код так, чтобы под VirtualBox эти сообщения дублировались в VirtualBox'овский лог - бывает удобно).

Re: Ваши способы отладки

Posted: Tue Feb 05, 2013 5:39 pm
by GerdtR
У меня такой случай: процесс запускает поток. Можно ли этот поток как-то в mtdbg отладить?