Где находится средства отладки майкрософт для windows

Обновлено: 07.07.2024

Мастер анализа сбоев позволяет выполнить отладку аварийного дампа памяти на компьютере с системой Windows и выполнить диагностику связанных ошибок системы. Чтобы выполнить анализ аварийного дампа для драйвера, который вызвал сбой системы, мастер анализа сбоев использует средства отладки Microsoft для Windows.

Мастер анализа сбоев предпринимает попытку поиска на компьютере средств отладки для Windows. Если диалоговое окно пути к каталогу пустое, то необходимо указать местоположение или выбрать папку установки средств отладки для Windows вручную (файлы можно загрузить с веб-узла Microsoft). Необходимо также указать путь, где находятся файлы символов.

Мастер анализа сбоев предоставляет результат диагностики, который можно использовать для выработки плана действий. С помощью служебной программы Службы и драйверы в наборе MSDaRT можно отключить драйвер, который вызвал сбой.

Если включить средства отладки Microsoft для Windows и файлы символов в состав файлов на загрузочном компакт-диске для MSDaRT, то они будут гарантированно доступны в случае необходимости.

В меню Средства MSDaRT выберите Анализ сбоев.

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

    Средства отладки Microsoft для Windows.

Можно выбрать необходимое действие, а именно отключение или обновление драйвера устройства, вызвавшего сбой, с помощью меню Службы и драйверы служебной программы Управление компьютером из набора MSDaRT.

Обеспечение доступа к файлам символов

Существуют следующие способы обеспечения доступа к файлам символов.

    Копирование файла аварийного дампа в другую систему. Если символы невозможно загрузить из-за отсутствия подключения к Интернету, скопируйте файл аварийного дампа на компьютер, на котором подключение имеется, и запустите мастер анализа сбоев.

    Оперативный режим: Если в этом режиме поле прокси-сервера оставлено пустым, мастер использует настройки прокси-сервера из раздела «Свойства обозревателя» панели управления. Если в имеющемся поле введен адрес прокси-сервера, то будет использовать этот адрес вместо настройки в разделе «Свойства обозревателя».

В пакет средств отладки для Windows входят современные отладочные инструменты, с помощью которых можно исследовать внутреннее устройство Windows. В самую последнюю версию в качестве составной части включен набор для разработки программного обеспечения — Windows Software Development Kit (SDK).

Средства из этого набора могут использоваться для отладки как процессов пользовательского режима, так и процессов ядра.

ПРИМЕЧАНИЕ. Средства отладки Debugging Tools for Windows довольно часто обновляются и выпускаются независимо от версий операционной системы Windows, поэтому почаще проверяйте наличие новых версий.

СОВЕТ. Отладка в пользовательском режиме.

Средства отладки могут также использоваться для подключения к процессу пользовательского режима и для изучения и (или) изменения состояния памяти процесса. При подключении к процессу есть два варианта:

  • Навязчивый (Invasive). Если при подключении к запущенному процессу не даны специальные указания, для подключения отладчика к отлаживаемому коду используется Windows-функция DebugActiveProcess. Тем самым создаются условия для исследования и (или) изменения памяти процесса, установки контрольных точек и выполнения других отладочных функций. Windows позволяет остановить отладку без прерывания целевого процесса, если отладчик отключается без прерывания своей работы.
  • Ненавязчивый (Noninvasive). При таком варианте отладчик просто открывает процесс с помощью функции OpenProcess. Этот процесс не подключается к другому процессу в качестве отладчика. Это позволяет исследовать и (или) изменять память целевого процесса, но вы не можете устанавливать контрольные точки.

Со средствами отладки можно также открывать файлы дампа процесса пользовательского режима.

Для отладки ядра могут использоваться два отладчика: работающий в окне командной строки (Kd.exe) и имеющий графический пользовательский интерфейс, GUI (Windbg.exe). Оба отладчика предоставляют одинаковый набор команд, поэтому выбор всецело зависит от личных предпочтений. Эти средства позволяют выполнять три типа отладки ядра:

  • Открыть аварийный дамп-файл, созданный в результате аварийного завершения работы системы.
  • Подключиться к действующей, работающей системе и исследовать состояние системы (или установить контрольные точки, если ведется отладка кода драйвера устройства). Для этой операции нужны два компьютера — целевой и ведущий. Целевой компьютер содержит отлаживаемую систему, а ведущий — систему, на которой запущен отладчик. Целевая система может быть подключена к ведущей через нуль-модемный кабель, кабель IEEE 1394 или отладочный кабель USB 2.0. Целевая система должна быть загружена в режиме отладки (либо путем нажатия F8 в процессе загрузки и выбора пункта Режим отладки (Debugging Mode), либо путем настройки системы на запуск в режиме отладки, используя Bcdedit или Msconfig.exe). Можно также подключиться через поименованный канал, применяемый при отладке через виртуальную машину (созданную такими средствами, как Hyper-V, Virtual PC или VMWare), путем выставления гостевой операционной системой последовательного порта в качестве поименованного канального устройства.
  • Системы Windows позволяют также подключиться к локальной системе и исследовать ее состояние. Это называется «локальной отладкой ядра». Чтобы приступить к локальной отладке ядра с помощью отладчика WinDbg, откройте меню File (Файл), выберите пункт Kernel Debug (Отладка ядра), щелкните на вкладке Local (Локальная), а затем щелкните на кнопке OK. Целевая система должна быть загружена в отладочном режиме. Пример появляющегося при этом экрана показан на рис. 1.6. В режиме локальной отладки ядра не работают некоторые команды отладчика ядра (например, команда .dump, предназначенная для создания дампа памяти, хотя такой дамп можно создать с помощью рассматриваемого далее средства LiveKd).

локальная-отладка-ядра

Локальная отладка ядра

Для отображения содержимого внутренней структуры данных, включающей сведения о потоках, процессах, пакетах запросов на ввод-вывод данных и информации об управлении памятью, после подключения к режиму отладки ядра можно воспользоваться одной из множества команд расширения отладчика (команд, начинающихся с символа «!»).

Эксперимент: Отображение информации о типах для структур ядра.

Чтобы вывести список структур ядра, чей тип информации включен в символы ядра, наберите в отладчике ядра команду dt nt!_*. Частичный образец вывода имеет следующий вид:

Командой dt можно также воспользоваться для поиска определенных структур, используя заложенную в эту команду возможность применения символов-заместителей. Например, если ведется поиск имени структуры для объекта interrupt, нужно набрать команду dt nt!_*interrupt*:

lkd> dt nt!_*interrupt*

Затем, как показано в следующем примере, команду dt можно использовать для форматирования определенной структуры:

lkd> dt nt!_kinterrupt

+0x000 Type : Int2B

+0x002 Size : Int2B

+0x008 InterruptListEntry : _LIST_ENTRY

+0x018 ServiceRoutine : Ptr64 unsigned char

+0x020 MessageServiceRoutine : Ptr64 unsigned char

+0x028 MessageIndex : Uint4B

+0x030 ServiceContext : Ptr64 Void

+0x038 SpinLock : Uint8B

+0x040 TickCount : Uint4B

+0x048 ActualLock : Ptr64 Uint8B

+0x050 DispatchAddress : Ptr64 void

+0x058 Vector : Uint4B

+0x05c Irql : UChar

+0x05d SynchronizeIrql : UChar

+0x05e FloatingSave : UChar

+0x05f Connected : UChar

+0x060 Number : Uint4B

+0x064 ShareVector : UChar

+0x065 Pad : [3] Char

+0x068 Mode : _KINTERRUPT_MODE

+0x06c Polarity : _KINTERRUPT_POLARITY

+0x070 ServiceCount : Uint4B

+0x074 DispatchCount : Uint4B

+0x078 Rsvd1 : Uint8B

+0x080 TrapFrame : Ptr64 _KTRAP_FRAME

+0x088 Reserved : Ptr64 Void

+0x090 DispatchCode : [4] Uint4B

Следует заметить, что при выполнении команды dt подструктуры (структуры внутри структур) по умолчанию не показываются. Для выполнения рекурсии подструктур нужно воспользоваться ключом –r. Например, воспользоваться этим ключом для вывода объекта прерывания ядра с показом формата структуры _LIST_ENTRY, хранящейся в поле InterruptListEntry:

lkd> dt nt!_kinterrupt -r

+0x000 Type : Int2B

+0x002 Size : Int2B

+0x008 InterruptListEntry : _LIST_ENTRY

+0x000 Flink : Ptr64 _LIST_ENTRY

+0x000 Flink : Ptr64 _LIST_ENTRY

+0x008 Blink : Ptr64 _LIST_ENTRY

+0x008 Blink : Ptr64 _LIST_ENTRY

+0x000 Flink : Ptr64 _LIST_ENTRY

+0x008 Blink : Ptr64 _LIST_ENTRY

В файле справки Debugging Tools for Windows также объясняется, как настраиваются и используются отладчики ядра. Дополнительные подробности использования отладчиков ядра, предназначенные непосредственно для создателей драйверов устройств, могут быть найдены в документации по набору Windows Driver Kit.

Debugging Tools for Windows обновляются и выкладываются в публичный доступ достаточно часто и процесс этот никак не зависит от выпуска операционных систем. Поэтому, периодически проверяйте наличие новых версий.

Давайте теперь посмотрим, что же, в частности, позволяют нам средства Debugging Tools for Microsoft Windows:

  • Отлаживать локальные приложения, службы (сервисы), драйвера и ядро;
  • Отлаживать по сети удаленные приложения, службы (сервисы), драйвера и ядро;
  • Отлаживать работающие приложения в режиме реального времени;
  • Анализировать файлы дампов памяти приложений, ядра и системы в целом;
  • Работать с системами на базе архитектур x86/x64/Itanium;
  • Отлаживать программы пользовательского режима и режима ядра;

Доступны следующие версии Debugging Tools for Windows: 32-bit x86, Intel Itanium, 64-bit x64. Нам потребуются две из них: x86 либо x64.

Доступны несколько способов установки Debugging Tools for Windows, в данной же статье мы будем рассматривать лишь основные из них:

  • Установка посредством web-инсталлятора.
  • Установка Debugging Tools for Windows с ISO-образа Windows SDK.
  • Установка Debugging Tools for Windows непосредственно из пакетов dbg_amd64.msi / dbg_x86.msi .

Остается неясен еще во какой момент, зачем мне инсталлировать отладочный инструментарий на компьютер? Зачастую ведь сталкиваешься с ситуацией, когда вмешательство в рабочую среду крайне нежелательно! И уж тем более что инсталляция нового продукта, то есть внесение изменений в реестр/файлы системы, может быть совершенно недопустима. Примерами могут служить критически-важные сервера. Почему бы разработчикам не продумать вариант с портабельными (portable) версиями приложений, не требующих установки?
От версии к версии процесс установки пакета Debugging Tools for Windows претерпевает некоторые изменения. Давайте теперь перейдем непосредственно к процессу установки и рассмотрим способы, которыми можно установить инструментарий.

Установка Debugging Tools for Windows при помощи web-инсталлятора

Переходим на страницу Архив Windows SDK и находим раздел под названием Windows 10 и ниже пункт "Windows 10 SDK (10586) и эмулятор устройства с Windows 10 Mobile (Майкрософт) (версия 10586.11)".

Debugging tools веб инсталлятор

Windows SDK web инсталлятор

Зачастую, при выборе всех без исключения компонентов пакета, в процессе установки могут возникнуть ошибки. В этом случае рекомендуется устанавливать компоненты выборочно, минимально необходимый набор.

После завершения инсталляции Debugging Tools for Windows расположение файлов отладки при данном методе инсталляции у нас будет следующим:

  • 64-битные версии: C:\Program Files (x86)\Windows Kits\x.x\Debuggers\x64
  • 32-битные версии: C:\Program Files (x86)\Windows Kits\x.x\Debuggers\x86

* где x.x - определенная версия комплекта разработки;
Заметили, что версии 8 и выше, пути инсталляции заметно отличаются от классических для всех предыдущих версий средств отладки?

Огромным плюсом данного способа установки Debigging Tools for Windows является установка версий отладочных средств сразу всех архитектур.

Установка Debugging Tools for Windows с ISO-образа Windows SDK

Данный метод подразумевает установку Debugging Tools for Windows с использованием полного инсталляционного образа Windows SDK (Software Developers Kit). До определенного времени, скачать образ ISO для соответствующей системы можно было на странице Архив Windows SDK. Однако, в данный момент, получить ISO-образ SDK можно через запуск web-инсталлятора sdksetup.exe , и выбора пункта Download the Windows Software Development Kit в стартовом окне инсталлятора:

windows-sdk-iso-download

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

Соответственно, на странице необходимо подобрать требуемый дистрибутив, для меня (да и думаю для многих) в данный момент это "Пакет Windows SDK для Windows 7 и .NET Framework 4" и чуть ниже нажать на ссылку "Получить ISO-образ DVD-диска".

Далее у нас имеется выбор между тремя вариантами образа:

Имя Назначение
GRMSDK_EN_DVD.iso Образ SDK для систем с архитектурой x86 (32-битных).
GRMSDKIAI_EN_DVD.iso Образ SDK для систем с архитектурой ia64.
GRMSDKX_EN_DVD.iso Образ SDK для систем с архитектурой x64 (64-битных).

Соответственно, необходимо выбрать исключительно по необходимости. Обычно разрядность Debugging Tools for Windows совпадает с разрядностью системы. У меня исследуемые системы, в основном, 64-битные, поэтому я в большинстве случаев скачиваю образ для 64-битной системы GRMSDKX_EN_DVD.iso .
Затем, после скачивания образа, нам необходимо с имеющимся ISO-образом как-то работать. Традиционным способом является, конечно же, запись компакт-диска, но ведь это достаточно долгий и иногда затратный метод. Предлагаю воспользоваться бесплатными утилитами по созданию в системе виртуальных дисковых устройств. Лично я для этой цели предпочитаю пользоваться программой DEAMON Tools Lite. У кого-то могут быть и другие предпочтения, более прямые или легковесные утилиты, на вкус и цвет, как говорится.. После инсталляции DAEMON Tools Lite, я просто щелкаю два раза на файл образа GRMSDKX_EN_DVD.iso и в системе у меня появляется новый виртуальный компакт диск:

Монтирование Windows SDK ISO

Уже затем двойным щелчком активирую автозагрузку и запускаю инсталляцию Windows SDK:

Процесс инсталляции Windows SDK

Когда подходит очередь выбирать устанавливаемые компоненты из списка, то отключаем абсолютно все опции кроме помеченных на скриншоте. Это поможет избежать ненужных нам сейчас ошибок.

Выбор опции Debugging Tools for Windows

Все именно так, на скриншоте отмечено две опции: "Windows Performance Toolkit" и "Debugging Tools for Windows". Выбирайте обе, потому как Windows Performance Toolkit Вам непременно пригодится в работе! Далее, после нажатия кнопки "Next" инсталляция продолжается в обычном режиме. И в конце вы увидите надпись "Installation Complete".
По окончании инсталляции рабочие директории комплекта Debugging Tools for Windows будут следующими:

  • Для версии x86: C:\Program Files (x86)\Debugging Tools for Windows (x86)
  • Для версии x64: C:\Program Files\Debugging Tools for Windows (x64)

На этом установку Debugging Tools for Windows можно считать оконченной.

Установка Debugging Tools for Windows через .msi файл

В случае возникновения проблем при инсталляции Debugging Tools for Windows двумя предыдущими способами, у нас в запасе остается еще один, самый надежный и проверенный временем, выручавший, так сказать, не раз. Когда-то, до интеграции в Windows SDK, Debugging Tools for Windows были доступны в виде отдельного инсталлятора .msi, который и сейчас можно найти, однако уже в недрах дистрибутива Windows SDK. Поскольку у нас на руках имеется уже ISO-образ Windows SDK, то мы можем не монтировать его в систему, а просто открыть при помощи всем уже хорошо знакомого архиватора WinRAR, ну или любого другого продукта, работающего с содержимым ISO-дисков.

debugging tools msi

После открытия образа нам необходимо пройти в каталог "Setup", находящийся в корне и далее выбрать одну из директорий:

  • Для установки 64-битной версии: \Setup\WinSDKDebuggingTools_amd64 и распаковать из этого каталога файл dbg_amd64.msi .
  • Для установка 32-битной версии: \Setup\WinSDKDebuggingTools и распаковать из этого каталога файл dbg_x86.msi .

Далее, запускаем распакованный только что .msi файл и стартуем установку Debugging Tools for Windows.

Установка Debugging Tools с помощью msi

По окончании инсталляции рабочие директории комплекта Debugging Tools for Windows будут следующими:

  • Для версии x86: C:\Program Files (x86)\Debugging Tools for Windows (x86)
  • Для версии x64: C:\Program Files\Debugging Tools for Windows (x64)

На этом установку Debugging Tools for Windows можно считать выполненной.

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

Не знаю с чем это связано, быть может с моей невнимательностью, но после инсталляции Отладочных средств для Windows, инсталлятор не прописывает в системную переменную пути Path путь к каталогу с отладчиком. Это накладывает определенные ограничения на запуск различных отладочных задач напрямую из консоли. Поэтому, в случае отсутствия пути, я самостоятельно прописываю в окне Переменные среды путь к отладочным средствам:

  • C:\Program Files (x86)\Windows Kits\10\Debuggers\x86
  • C:\Program Files (x86)\Windows Kits\10\Debuggers\x64

* В вашем случае пути могут отличаться как по причине использования ОС другой разрядности, так и по причине использования SDK другой версии.

Утилиты пакета Debugging Tools for Windows могут работать в качестве переносных приложений, достаточно просто скопировать с рабочей системы каталог Microsoft Windows Performance Toolkit и использовать его в качестве портабельной версии на рабочем сервере. Но не забывайте учитывать разрядность системы!! Если Вы даже произвели полную инсталляцию пакета на критически-важную систему, то работать можно начинать прямо после инсталляции, перезагрузка не требуется.

Возможность скачивания MDOP отсутствует в свободном доступе для пользователей. Легально загрузить пакет могут только обладатели платных подписок TechNet.

Возможности ERD Commander в MSDaRT 6,5.

В таблице перечислены некоторые из проблем, которые могут быть решены с помощью утилиты и мастера, которые предоставляются в Microsoft Диагностика и восстановление Toolset:

Графический интерфейс Microsoft Диагностика и восстановление Toolset


Системные требования для ERD Commander в MSDaRT 6,5

Она имеет следующие минимальные требования к аппаратному обеспечению:

Создание загрузочного ERD Commander CD для MSDaRT 6,5

Чтобы создать загрузочный компакт-диск из ISO-образа, Вам необходимы:

При запуске ERD Commander Boot Media Wizard, будьте готовы предоставить следующую информацию:

Выбор инструмента: Вы можете выбрать инструменты и включить их в ERD Commander Boot CD на этом этапе. ERD Commander Boot Media Wizard представляет диалог выбора инструмента. Вы можете выбрать или удалить инструмент из списка инструментов, которые будут включены в MSDaRT 6,5 Boot CD, нажав Добавить или удалить кнопки.

Средств отладки для Windows: Вас попросят указать расположение средств отладки для Windows. Если вы включите Crash Analyzer в Мастере создания ISO-образа, вас просят указать расположение средств отладки для Windows. Если у вас нет сохраненных копий этих инструментов, вы можете загрузить их с Microsoft. Ссылка на страницу загрузки будет приведена в мастере. Вы можете указать расположение средства отладки в системе, где вы работаете с MSDaRT Boot Media Wizard, или вы можете отложить использование инструментов, которые расположены на целевой системе. Если вы решите использовать копию на другой системе, необходимо убедиться, что инструменты установлены на каждой системе, на которой Вы планируете проводить диагностику аварии. Примечание: если вы включите Crash Analyzer в Мастере в ISO-образа, рекомендуется также включать средств отладки для Windows.

Чтобы добавить средств отладки для Windows (необязательно):

1) Нажмите на ссылку, чтобы скачать средств отладки для Windows.

2) В анализаторе поддержки Crash Analyzer, в диалоговом окне MSDaRT Boot Media Wizard, выбрать один из следующих вариантов:

Важно: Crash Analyzer мастер не будет работать, если средства отладки для Windows не доступны.


Определения для автономной системы Sweeper: в диалоговом окне Загрузка используются переключатели для выбора, чтобы загрузить последнюю версию определения на момент создания диска ERD или избрать для загрузки определения позже. Определения хранилища известных вредоносных программ и других потенциально нежелательных программ. Поскольку вредоносное ПО в настоящее время постоянно развивается, автономная система Sweeper опирается на современные определения, чтобы определить, есть ли программное обеспечение, которое пытается установить, запустить, или изменить настройки на компьютере посредством нежелательного или вредоносного программного обеспечения.

Чтобы включить последние определения в ERD Commander Boot CD (рекомендуется), нажмите кнопку Да для загрузки последних версий определений. Обновления определений начнется автоматически. Вы должны быть подключены к Интернету, чтобы завершить этот процесс.

Чтобы пропустить обновления определений, нажмите кнопку Нет, вручную загрузите определения позже и они не будут включены в ERD Commander Boot CD.

Драйверы: выбор возможности добавления драйверов в образ ISO. Вы можете включить дополнительные драйверы на загрузочном компакт-диске MSDaRT 6,5, что может понадобиться при ремонте компьютера. Они обычно включают в себя хранение или сетевые контроллеры, которые не включены в Windows DVD.

1) Чтобы добавить хранения или драйвер контроллера сети в загрузочный CD в диалоговом окне Дополнительные драйверы ERD Commander Boot Media Wizard, нажмите кнопку Добавить устройство.

Повторите шаги 1 и 2 для каждого из драйверов, которые вы хотите включить.

Важно: беспроводная связь (Bluetooth или 802.11a/b/g/n) не поддерживается в MSDaRT.

Дополнительные файлы: Вы можете добавлять файлы в образ ISO, которые могут потребоваться для диагностики проблем. Выполните следующую процедуру в ERD Commander Boot Media Wizard, чтобы добавить файлы в загрузочный CD так, что их можно использовать для диагностики системных проблем.

Чтобы добавить файлы на компакт-диск:

1) В диалоговом Дополнительные файлы MSDaRT Boot Media Wizard, нажмите кнопку Показать файлы. Это открывает окно Проводника, который отображает каталог, который содержит необходимые файлы.

2) Создать подкаталог в каталог, указанный в диалоговом окне. Скопируйте файлы, которые вы хотите добавить в новый каталог.

Расположение ISO-образа. Выполните следующую процедуру в ERD Commander Boot Media Wizard, чтобы указать место, где расположен создаваемый ISO-образ.

Чтобы указать расположение изображения ISO:

1) В Создать Startup диалого окна ERD Commander Boot Media Wizard, нажмите кнопку Обзор.

2) Перейдите в папку в окне Сохранить как, а затем нажмите кнопку Сохранить.

Образ ISO будет отличаться по размерам в зависимости от инструментов, которые вы выбираете и файлов, которые вы добавляете в Мастере создания ERD Commander.

Мастер требует наличия ISO образа. Файл образа имеет расширение *iso, потому что большинство программ, записывающие компакт-диски работают именно с этим расширением файлов образов. Если вы не укажете иное место, образ ISO создается на рабочем столе с именем ERD65.ISO.

CD диск. Мастер попросит указать тип компакт-дисков, которые должны быть использованы для записи CD. Если ERD Commander Boot Media Wizard обнаруживает совместимый RW-привод для компакт-дисков на вашей системе, он предложит записать ISO-образ на диск на доступном приводе. Если мастер не распознает ваш диск, вам необходимо использовать другую программу для записи CD.

Запись образа на CD-диск.

1) Для записи файла образа на записываемый диск в диалоговом окне компакт-диска ERD Commander Boot Media Wizard, выберите Запись образа на выбранный записываемый CD-диск.

2) Выберите компакт-диск.

Примечание : Если диск не распознается после установки нового диска, Вы можете нажать Обновить список дисков, чтобы заставить Мастер обновить список доступных дисков.

После этого начнется процесс записи диска аварийного восстановления ERD Commander.

Читайте также: