Настройка отладки Kernel-Mode по кабелю 1394 вручную

Важно!

Транспорт 1394 доступен для использования в Windows 10 версии 1607 и более ранних версий. Он недоступен в более поздних версиях Windows. Проекты следует перенести на другие транспорты, например KDNET с помощью Ethernet. Дополнительные сведения об этом транспорте см. в статье Настройка автоматической отладки сетевого ядра KDNET.

Средства отладки для Windows поддерживают отладку ядра по кабелю 1394 (Firewire). В этом разделе описывается настройка отладки 1394 вручную.

Компьютер, на котором выполняется отладчик, называется главным компьютером, а отлаживаемый — конечным компьютером. Главный и целевой компьютеры должны иметь адаптер 1394 и работать под управлением Windows XP или более поздней версии. Главный и целевой компьютеры не обязательно должны работать под управлением одной и той же версии Windows.

Настройка целевого компьютера

  1. Подключите кабель 1394 к контроллерам 1394, выбранным для отладки на хост-компьютере и целевом компьютерах.

Важно!

Перед использованием BCDEdit для изменения сведений о загрузке может потребоваться временно приостановить функции безопасности Windows, такие как BitLocker и безопасная загрузка на тестовом компьютере. Повторно включите эти функции безопасности после завершения тестирования и соответствующим образом управляйте тестовой компьютером, когда функции безопасности отключены.

  1. В окне командной строки с повышенными привилегиями введите следующие команды, где n — номер канала по вашему выбору, от 0 до 62:

    bcdedit /debug on

    bcdedit /dbgsettings 1394 channel:n

  2. Необходимо указать номера шины, устройства и функции контроллера 1394, который будет использоваться для отладки. Дополнительные сведения см. в разделе Советы по устранению неполадок для отладки 1394.

  3. Пока не перезагружайте целевой компьютер.

Запуск сеанса отладки в первый раз

  1. Определите разрядность (32-разрядная или 64-разрядная версия) Windows, работающей на хост-компьютере.

  2. На хост-компьютере откройте версию WinDbg (от имени администратора), соответствующую разрядности Windows, работающей на хост-компьютере. Например, если главный компьютер работает под управлением 64-разрядной версии Windows, откройте 64-разрядную версию WinDbg от имени администратора.

  3. В меню Файл выберите Пункт Отладка ядра. В диалоговом окне Отладка ядра откройте вкладку 1394 . Введите номер канала и нажмите кнопку ОК.

    На этом этапе драйвер отладки 1394 устанавливается на главный компьютер. Вот почему важно сопоставить разрядность WinDbg с разрядностью Windows. После установки драйвера отладки 1394 можно использовать 32-разрядную или 64-разрядную версию WinDbg для последующих сеансов отладки.

  4. Перезагрузите целевой компьютер.

Запуск сеанса отладки

Использование WinDbg

  • На хост-компьютере откройте WinDbg. В меню Файл выберите Пункт Отладка ядра. В диалоговом окне Отладка ядра откройте вкладку 1394 . Введите номер канала и нажмите кнопку ОК.

    Вы также можете начать сеанс с WinDbg, введя следующую команду в окне командной строки, где n — номер канала:

    windbg /k 1394:channel=n

Использование KD

  • На хост-компьютере откройте окно командной строки и введите следующую команду, где n — номер канала:

    kd /k 1394:channel=n

Использование переменных среды

На хост-компьютере можно использовать переменные среды, чтобы указать канал 1394. Тогда вам не нужно указывать канал при каждом запуске сеанса отладки. Чтобы использовать переменные среды для указания канала 1394, откройте окно командной строки и введите следующие команды, где n — номер канала:

  • set _NT_DEBUG_BUS=1394
  • set _NT_DEBUG_1394_CHANNEL=n

Чтобы начать сеанс отладки, откройте окно командной строки и введите одну из следующих команд:

  • Kd
  • Windbg

Дополнительные сведения

Полную документацию по команде bcdedit и файлу boot.ini см. в разделе Параметры загрузки для тестирования и отладки драйверов в документации по пакету драйверов Windows (WDK).

Советы по устранению неполадок при отладке кабеля 1394

Большинство проблем отладки 1394 вызваны использованием нескольких контроллеров 1394 на главном или целевом компьютере. Использование нескольких контроллеров 1394 на хост-компьютере не поддерживается. Драйвер отладки 1394, который выполняется на узле, может взаимодействовать только с первым контроллером 1394, перечисленным в реестре. Если у вас есть встроенный в системную плату контроллер 1394 и отдельный карта 1394, удалите карта или отключите встроенный контроллер в настройках BIOS компьютера.

На целевом компьютере может быть несколько контроллеров 1394, хотя это не рекомендуется. Если на целевом компьютере установлен контроллер 1394 на системной плате, используйте этот контроллер для отладки, если это возможно. При наличии дополнительного карта 1394 следует удалить карта и использовать подключенный контроллер. Еще одним решением является отключение подключенного контроллера 1394 в параметрах BIOS компьютера.

Если на целевом компьютере включено несколько контроллеров 1394, необходимо указать параметры шины, чтобы отладчик знал, какой контроллер следует затребовать для отладки. Чтобы указать параметры шины, откройте диспетчер устройств на целевом компьютере и найдите контроллер 1394, который требуется использовать для отладки. Откройте страницу свойств контроллера и запишите номер шины, номер устройства и номер функции. В окне командной строки с повышенными привилегиями введите следующую команду, где b, d и f — это номера шины, устройства и функции в десятичном формате:

bcdedit -set "{dbgsettings}" busparamsb.г.е.

Перезагрузите целевой компьютер.

См. также

Настройка отладки Kernel-Mode вручную

Автоматическая настройка отладки сетевого ядра KDNET