Надеюсь никто не будет спорить о том, что было бы очень удобно использовать виртуальные машины (MS Virtual PC, etc ) для отладки дрйверов...
Но вот мне почемуто так и не удалось получить приемлимых результатов, честно говоря в силу нехватки времени глубоко разбираться с этим не получилось... но суть проблемы состоит в том что возникают какие-то безумные задержки, загрузка процесора 100% ... и вообще сомнение берет, то ли ты отлаживаешь.
А кто нибудь имеет другой опыт, или мысли по поводу невозможности такового...
Здравствуйте, Andrew.W Worobow, Вы писали:
AWW>Привет!
AWW>Надеюсь никто не будет спорить о том, что было бы очень удобно использовать виртуальные машины (MS Virtual PC, etc ) для отладки дрйверов...
AWW>Но вот мне почемуто так и не удалось получить приемлимых результатов, честно говоря в силу нехватки времени глубоко разбираться с этим не получилось... но суть проблемы состоит в том что возникают какие-то безумные задержки, загрузка процесора 100% ... и вообще сомнение берет, то ли ты отлаживаешь.
AWW>А кто нибудь имеет другой опыт, или мысли по поводу невозможности такового...
Из собственного опыта я сделал вывод, что производители забивают на эмуляцию некоторых команд режима ядра. Например, со счетчиками производительности процессора есть проблемы. Может, им лень, а может, непросто это сделать. Так что для отладки драйвера все-таки лучше использовать выделенную машину с настроенной системой перезаливки имиджей ОС.
[ Posted via RSDN@Home 1.1.4 beta 3 (185) listening to the silence... ]
It's kind of fun to do the impossible (Walt Disney)
Re[2]: Использование виртуальных машин для отладки?
Здравствуйте, Alex Alexandrov, Вы писали:
AA>Так что для отладки драйвера все-таки лучше использовать выделенную машину с настроенной системой перезаливки имиджей ОС.
Ну дак больше ничего не остается, но ведь согласитесь, что виртуальные машинки дюже удобны, хотя бы такими штуками как откат, да и очень удобно фиксировать состояние машины, для дальнейшего изучения, но похоже все это не для нас.
Здравствуйте, Andrew.W Worobow, Вы писали:
AWW>Привет!
AWW>Надеюсь никто не будет спорить о том, что было бы очень удобно использовать виртуальные машины (MS Virtual PC, etc ) для отладки дрйверов...
AWW>Но вот мне почемуто так и не удалось получить приемлимых результатов, честно говоря в силу нехватки времени глубоко разбираться с этим не получилось... но суть проблемы состоит в том что возникают какие-то безумные задержки, загрузка процесора 100% ... и вообще сомнение берет, то ли ты отлаживаешь.
AWW>А кто нибудь имеет другой опыт, или мысли по поводу невозможности такового...
Как Вы отлаживаете. Дело в том, что эмуляторы включают дополнительные средства оптимизации под операционные сиситемы(в частности VirtualPC), сперва я бы посоветовал выключить оптимизацию, во-вторых, какой отладчик применяете: со стандартным проблем возникнуть не должно, а с SoftIce будет полно, вплоть до BSoD, или банальной перезагрузки.
Re[2]: Использование виртуальных машин для отладки?
Здравствуйте, ArtSh, Вы писали:
AS>Как Вы отлаживаете. Дело в том, что эмуляторы включают дополнительные средства оптимизации под операционные сиситемы(в частности VirtualPC), сперва я бы посоветовал выключить оптимизацию, во-вторых, какой отладчик применяете: со стандартным проблем возникнуть не должно
Блин вполне вероятно, я недостаточно четко сформулировал, проблему... Дело в том что я имею ввиду, отладку драйверов, то есть отладка кода режима ядра, что касается отладчика, то я проверял на WinDbg, (мне он кажется удобнее ), подключение естественно через COM, например на виртуалке COM1->COM1, а отладчик на COM2.
Не все кто уехал, предал Россию.
Re[3]: Использование виртуальных машин для отладки?
Здравствуйте, Andrew.W Worobow, Вы писали:
AWW>Здравствуйте, Alex Alexandrov, Вы писали:
AA>>Так что для отладки драйвера все-таки лучше использовать выделенную машину с настроенной системой перезаливки имиджей ОС.
AWW>Ну дак больше ничего не остается, но ведь согласитесь, что виртуальные машинки дюже удобны, хотя бы такими штуками как откат, да и очень удобно фиксировать состояние машины, для дальнейшего изучения, но похоже все это не для нас.
Vmware поддерживает WinDBG (подключение через pipe), и SoftIce — как удаленно, так и внутри.
О подключении WinDBG — читать в документации VMWare.
SoftIce — глава в мануале сайса.
VirtualPC для этих целей использовать не советую (если используешь "грязный" процессорный код, типа cli/nop/nop/pushf/pop eax — если определять флаг IF, то он будет установлен. Комманды sgdt, sidt — выдают неверные результаты. Хотя все это при включенном ускорении).
Re[4]: Использование виртуальных машин для отладки?
Здравствуйте, cz, Вы писали:
cz>Vmware поддерживает WinDBG (подключение через pipe), и SoftIce — как удаленно, так и внутри. cz>О подключении WinDBG — читать в документации VMWare. cz>SoftIce — глава в мануале сайса.
Пошел пробовать VMWare... , спасибо.
Не все кто уехал, предал Россию.
Re[4]: Использование виртуальных машин для отладки?
Здравствуйте, Andrew.W Worobow, Вы писали:
AWW>Блин вполне вероятно, я недостаточно четко сформулировал, проблему... Дело в том что я имею ввиду, отладку драйверов, то есть отладка кода режима ядра, что касается отладчика, то я проверял на WinDbg, (мне он кажется удобнее ), подключение естественно через COM, например на виртуалке COM1->COM1, а отладчик на COM2.
Я с некоторых пор отлаживаю чисто софтовые драйверы в SoftICE 4.2.7 под VMWare 4.5.1. Напрямую, без удаленного режима — как-то у меня его не получилось завести, а оба COM у меня заняты. Придется, правда, немного поплясать с бубном — возьми тут утилиту VMWRefresh.
Это касается 2k/XP. В 9x поднять SoftICE в 9x под VMWare у меня не получилось, однако он великолепно работает под VPC Такая вот петрушка.
... << RSDN@Home 1.1.4 beta 3 rev. 185>>
Re[4]: Использование виртуальных машин для отладки?
Здравствуйте, emusic, Вы писали:
E>Я с некоторых пор отлаживаю чисто софтовые драйверы в SoftICE 4.2.7 под VMWare 4.5.1. Напрямую, без удаленного режима
С легкой руки CZ ... Наслаждаюсь виртуальной удаленной отладкой под VMWare и WinDBG, через pipe, пока (тфу-тфу-тфу и *3) глюков незаметил.
Не все кто уехал, предал Россию.
Re[5]: Использование виртуальных машин для отладки?
Здравствуйте, Andrew.W Worobow, Вы писали:
AWW>С легкой руки CZ ... Наслаждаюсь виртуальной удаленной отладкой под VMWare и WinDBG, через pipe, пока (тфу-тфу-тфу и *3) глюков незаметил.
WinDbg в качестве клиента, а в ядре отладчиком кто?
... << RSDN@Home 1.1.4 beta 3 rev. 185>>
Re[4]: Использование виртуальных машин для отладки?
Здравствуйте, cz, Вы писали:
cz>Vmware поддерживает WinDBG (подключение через pipe), и SoftIce — как удаленно, так и внутри.
Я долго пытался запустить удаленную отладку в SoftICE из DS 3.1 — объективно ни на что не ругается, но SIRemote не может установить соединение. В частности, я совершенно не понял, как использовать UND — при его установке исчезает родной адаптер AMD, и появляется Universal Network Driver. Означает ли это, что UND забирает интерфейс драйвера родного адаптера под себя, а наверх показывает только свой? И возможно ли при этом использовать сеть в самих виндах, или для этого нужно добавить второй адаптер?
... << RSDN@Home 1.1.4 beta 3 rev. 185>>
Re[6]: Использование виртуальных машин для отладки?
AWW>>С легкой руки CZ ... Наслаждаюсь виртуальной удаленной отладкой под VMWare и WinDBG, через pipe, пока (тфу-тфу-тфу и *3) глюков незаметил.
E>WinDbg в качестве клиента, а в ядре отладчиком кто?
multi(0)disk(0)rdisk(0)partition(1)\WINDOWS="Microsoft Windows XP Professional" /fastdetect /debug /debugport=COM1 /baudrate=57600