Отладка драйвера на локальной машине - PullRequest
0 голосов
/ 12 октября 2019

Почему нет отладчика ядра GUI, такого как SoftICE, который позволяет отлаживать драйвер ядра на локальном компьютере в настоящее время? Почему удаленная машина обязательна для отладки драйверов в Windows 7 и выше?

1 Ответ

2 голосов
/ 19 октября 2019

Встроенный в систему отладчик режима ядра является чрезвычайно сложным программным обеспечением, поскольку он должен заботиться о многих низкоуровневых ресурсах и операциях ядра. Если внутреннее ядро ​​изменяется в следующей версии ОС, отладчик должен быть обновлен соответствующим образом. Разработчики отладчика должны работать вместе с разработчиками ядра и иметь доступ к исходному коду ядра. Все это делает разработку внутрисистемного отладчика сложной и дорогой.

И любая отладка в режиме ядра в системе разработки является опасным и неудобным процессом. Даже если из-за BSOD не происходит никаких повреждений FS и / или других потерь данных, загрузка системы разработки, запуск всех необходимых приложений для воссоздания удобной среды разработки - гораздо более длительный процесс, чем перезагрузка тупой целевой машины (аппаратной или виртуальной).

Когда аппаратные компьютеры были дорогими, не было эффективного интерфейса удаленной отладки и не было эффективных решений для виртуальных машин, SoftICE был приемлемым инструментом. Но за последние 15 лет удаленная отладка ядра в Windows была значительно улучшена, поэтому использование WinDbg намного удобнее, чем использование SoftICE, даже несмотря на то, что WinDbg имеет много недостатков и ошибок.

Добро пожаловать на сайт PullRequest, где вы можете задавать вопросы и получать ответы от других членов сообщества.
...