Версия для печати темы
Нажмите сюда для просмотра этой темы в оригинальном формате |
Форум программистов > C/C++: Системное программирование и WinAPI > Среда разработки для драйверов |
Автор: warman 18.7.2009, 15:34 |
Здравствуйте. Вопрос таков: я тут решил занять написанием драйверов и совместить это занятие с изучением до конца Си. Дело в том, что Си я начал изучать в Linux'е (gcc), а вчера установил Win и не могу найти нормальную студию (читай компилятор) для Си. У меня имеется MS Visual Studio 2003.NET и Compuware DriverStudio 3.1 и всё. Что посоветуете для этих (изучение Си, написания дров) целей. Заранее признателен за ответы. |
Автор: W4FhLF 18.7.2009, 15:45 |
Юзай студию 2008 (можно Express), плюс скачай отдельно WinDDK (Windows Driver Development Kit), в нём есть компилер отдельно, но можно юзать студийный по умолчанию. Только причём тут изучение Си? При написании дров, тем более без опыта, подавляющую часть времени ты будешь проводить в отладчике и справочниках по венде. |
Автор: warman 18.7.2009, 16:20 |
Просто я хочу изучить Си для того что бы писать дрова "с нуля", поэтому мне нужен Си-компилятор. P.S. Да ещё - что там на счет Compuware DriverStudio 3.1 ? |
Автор: W4FhLF 18.7.2009, 16:59 |
Забудь про это старьё. |
Автор: Andrew121 18.7.2009, 22:37 |
Mingw - Respect! Все в одном! Поддерживает новейшие расширения С99. http://downloads.sourceforge.net/sourceforge/mingw/gcc-full-4.4.0-mingw32-bin-2.tar.lzma?use_mirror=dfn |
Автор: W4FhLF 19.7.2009, 05:58 |
Andrew121, ты дрова им собирал? |
Автор: andrew_121 19.7.2009, 06:50 |
W4FhLF, Я нет. А http://www.reactos.org/ru/index.html Да! При том все драйвера в нем, не просто заглушки и редиректы. |
Автор: W4FhLF 19.7.2009, 07:09 |
А дрова под винду здесь причём? |
Автор: andrew_121 19.7.2009, 08:16 |
![]() http://www.reactos.org/ru/about_userfaq.html |
Автор: W4FhLF 19.7.2009, 08:51 |
andrew_121, смайлики и ссылки на RTFM по ReactOS совсем не помогут тебе скрыть отсутствие опыта и некомпетентность в данном вопросе. Поэтому не вводи человека в заблуждение. |
Автор: andrew_121 19.7.2009, 09:29 |
W4FhLF, Прежде, установи драйвера скомпиленые для ReactOS на виндавз. И убедись в том, что они работают. И скомпилены при помощи gcc. Я этого не скрываю. |
Автор: W4FhLF 19.7.2009, 09:45 |
mingw -- это лишний геморой, частенько приходится править хедеры, define'ы, pragma'ы, стандартные примеры далеко не сразу собираются. Ну хочется возиться с напильником -- it's up to you. |
Автор: jonie 19.7.2009, 11:09 |
andrew_121 тру программисты не используют SDK, да. Имея бесплатный SDK с бесплатный неплохим компилятором с бесплатной средой разработки, оно, конечно глупо это все использовать, да?) |
Автор: andrew_121 19.7.2009, 11:26 |
jonie, Ничего не понял... |
Автор: Riply 19.7.2009, 12:20 | ||
Драйвера можно запускать в режиме отладки ? А как это выглядит ? P.S. Я просто не в курсе. |
Автор: GremlinProg 19.7.2009, 12:36 |
тут скорее всего имелось ввиду нечто вроде DBGVIEW |
Автор: W4FhLF 19.7.2009, 12:36 |
Ну как... Компилируется драйвер с debug info и соответствующим pdb. Предварительно ставится breakpoint где-нибудь в DriverEntry, запускается WinDBG, загружается дров, срабатывает бряк, вываливаемся в WinDBG и там уже хоть трейс по исходнику. |
Автор: Riply 19.7.2009, 12:44 |
Просто фантастика какая-то ![]() В голове не укладывается. Допустим бряк в DriverEntry. Это что же получается, что у нас под отладкой System ? |
Автор: W4FhLF 19.7.2009, 12:48 |
Это я говорил с учётом того, что отладка удалённая ![]() |
Автор: Riply 19.7.2009, 12:54 | ||
"Ааа - сказали мы с Пером Иванычем" (с) ![]() Теперь понятно. Спасибо ![]() |
Автор: GremlinProg 19.7.2009, 12:56 |
ну вот, а я уже собирался ругаться ) очень уместное замечание, кстати, чтобы особенно не питать иллюзий |
Автор: korbian 21.7.2009, 09:26 |
простите, а какая принципиально разница между удаленной и локальной отладкой? |
Автор: DrHex 21.7.2009, 11:14 | ||
Для изучения написание дройверов лучше всего использовать DKK. Отладка может быть и локальной(Soft-ice, Syser).
Просто удаленная машина стопарится для отладки, вообщем когда отлажуются драва то вся машина где работает драйвер останавлимается на бряках(то и есть все процессы, кроме отладчика или сервера отладчика), то и есть удаленная отладка не удобна тем что нужно иметь две машины, но зато при отладки можно сидеть в аське))) |
Автор: GremlinProg 21.7.2009, 12:29 |
интересный опыт: http://forum.shelek.ru/index.php/topic,17429.0.html кто желает подергать за ниточки breakpoint'ов, готовьтесь вот к такому общению, если следите за обновлением железа мое мнение: подопытная машина в каком бы-то ни было виде для отладки необходима |