Русские Блоги
Заявление об авторском праве: Оригинальные работы, перепечатка разрешена. При перепечатке обязательно указывайте первоисточник статьи в виде гиперссылки. В противном случае привлечен к ответственности.
https://www.cnblogs.com/jiangxueqiao/archive/2017/08/29/7447852.html
Диспетчер задач
Диспетчер задач, пожалуй, самый доступный системный инструмент, и он имеет функцию генерации файлов дампа. Однако следует отметить, что в 64-разрядных операционных системах 64-разрядный диспетчер задач запускается по умолчанию. Использование диспетчера задач для создания файла дампа должно следовать принципу: использовать 32-разрядный диспетчер задач для создания файла дампа для 32-разрядного процесса (независимо от того, выполняется ли процесс в 32-разрядной или 64-разрядной системе), используйте 64-разрядный диспетчер задач для 64-битные процессы генерируют файлы дампа. В 64-разрядных системах расположен 32-разрядный диспетчер задач. C:\Windows\SysWOW64\taskmgr.exe 。
Аналогичные инструменты: Process Explorer, PCHunter и т. Д.
2. Регистрационная форма
3. Windbg
Это выглядит сложно, но это действительно легко понять.
5. Adplus
5.1 использование adplus
5.2 Общие параметры (для полной документации см.adplus.docфайл):
-о каталог
Укажите каталог хранения сгенерированных файлов.
Спасибо за чтение! У нас должен быть преподаватель из трех человек, добро пожаловать, чтобы исправить статью.
Создание ядра или полного аварийного дампа
Сбой системы (также известный как «проверка ошибки» или «Остановка ошибки») происходит, когда Windows не может работать правильно. Файл сброса, который производится из этого события, называется сбросом сбоя системы.
Ручной файл сброса ядра или полного файла памяти полезен при устранении нескольких проблем, так как процесс записи системной памяти во время сбоя.
Настройка файлов страниц
См. поддержку свалок сбоя системы для требования к размеру файла страницы для сбоя системы.
Включить параметр сброса памяти
Для выполнения этой процедуры необходимо войти в систему в качестве администратора или члена группы администраторов. Если компьютер подключен к сети, параметры сетевой политики могут помешать вам завершить эту процедуру.
Чтобы включить параметр сброса памяти, выполните следующие действия:
В панели управлениявыберите систему и систему > безопасности.
Выберите параметры расширенных систем, а затем выберите вкладку Advanced.
Убедитесь, что сброс памяти ядра или полная свалка памяти выбраны в статье Writing Debugging Information.
Вы можете изменить путь файла сброса, редактировать поле файла Dump. Другими словами, можно изменить путь с %SystemRoot%\Memory.dmp на локальный диск с достаточным диском, например E:\Memory.dmp.
Советы для создания свалок памяти
При сбое и перезапуске компьютера содержимое физической оперативной памяти передается в файл paging, расположенный на разделе, на котором установлена операционная система.
В зависимости от скорости жесткого диска, на котором Windows установлена, сброс более 2 гигабайт (ГБ) памяти может занять длительное время. Даже в лучшем случае, если файл сброса настроен для проживания на другом локальном жестком диске, значительное количество данных будет прочитано и записано на жесткие диски. Это может привести к длительному отключению сервера.
Используйте этот метод для создания полных файлов сброса памяти с осторожностью. В идеале это следует делать только при явном запросе инженера службы поддержки Майкрософт. Отладка файлов сброса ядра или полного файла памяти должна быть последней инстанцией после полного исчерпания всех стандартных методов устранения неполадок.
Вручную создать файл сброса памяти
Использование средства NotMyFault
Если во время проблемы можно войти в систему, можно использовать средство Microsoft Sysinternals NotMyFault. Для этого выполните следующие действия:
Выберите Начните, а затем выберите командную подсказку.
В командной строке запустите следующую команду:
Эта операция создает файл сброса памяти и ошибку остановки D1.
Использование NMI
На некоторых компьютерах нельзя использовать клавиатуру для создания файла аварийного сброса. Например, Hewlett-Packard (HP) BladeSystem из компании Hewlett-Packard разработки управляются с помощью графического пользовательского интерфейса (GUI) на основе браузера. Клавиатура не присоединена к серверу HP BladeSystem.
В этих случаях необходимо создать полный файл аварийного сбоя или файл аварийного сброса ядра с помощью переключателя NMI, который вызывает NMI на системном процессоре.
Для этого выполните следующие действия:
Внимательно следуйте шагам в этом разделе. Неправильное изменение реестра может привести к серьезным проблемам. Перед его изменением необходимо создать реестр для восстановления в случае возникновения проблем.
Этот ключ реестра не требуется для клиентов, работающих Windows 8 и более поздней, или серверов, работающих Windows Server 2012 и более поздней. Настройка этого ключа реестра для более поздних версий Windows не влияет.
В редакторе реестра найдите следующий подкай реестра:
HKEY_LOCAL_MACHINE\SYSTEM\CurrentControlSet\Control\CrashControl
Правой кнопкой мыши CrashControl, указать на Новый, а затем нажмите значение DWORD.
Введите NMICrashDump и нажмите кнопку Ввод.
Щелкните правой кнопкой мыши NMICrashDumpи выберите Изменение.
В поле Значение данных введите 1, а затем выберите ОК.
Поставщики оборудования, такие как HP, IBM и Dell, могут предоставить функцию автоматического восстановления системы (ASR). Эту функцию следует отключить во время устранения неполадок. Например, если функция ASR HP и Compaq включена в BIOS, отключим эту функцию во время устранения неполадок, чтобы создать полный файл Memory.dmp. Для точных действий обратитесь к поставщику оборудования.
Включите переключатель NMI в BIOS или с помощью веб-интерфейса Integrated Lights Out (iLO).
Точные действия см. в справочном руководстве BIOS или обратитесь к поставщику оборудования.
Протестировать этот метод на сервере с помощью коммутатора NMI для создания файла сброса. Вы увидите неисправность 0x00000080 stop.
Если вы хотите запустить NMI в Microsoft Azure с помощью серийной консоли, см. в рубрике Использование серийной консоли для вызовов SysRq и NMI.
Чем открыть файл дампа памяти Windows MEMORY.DMP
Многие знакомы с «синим экраном смерти» или BlueScreen. Синий экран появляется когда в работе Windows возникает критическая ошибка, что приводит к остановке работы операционной системы. При этом операционная система создает дамп памяти, в который записывает отладочную информацию и добавляет запись в журнал событий.
Просмотр и анализ файла минидампа.
Для просмотра минидампа достаточно перетащить файл в окно программы и тут же загрузится отладочная информация. Красным будут подсвечены модули вызвавшие ошибку. В случае представленном на скриншоте выше это был драйвер tcpip.sys.
Щелкнув по имени файла минидампа можно запустить поиск решения в Google.
Просмотр полного дампа памяти MEMORY.DMP.
Установка и настройка WinDBG.
Запускаем установку пакета Windows Software Development KIT и на этапе выбора компонентов отмечаем «Debugging Tools for Windows».
При первом запуске WinDBG необходимо выполнить настройку сервера отладочных символов.
1. Переходим в меню File > Symbol File Path и вставляем строку:
2. Сохраняем настройку File > Save Workspace.
Просмотр и анализ файла MEMORY.DMP.
Открываем файл MEMORY.DMP: File > Open Crash Dump. Начинается процесс загрузки отладочных символов, в этот момент внизу будет видна надпись: Debugee not connected.
По завершении обработки файла дампа памяти Windows нам необходимо найти среди полученной информации модуль, который вызвал сбой в работе. Найти сбойный модуль можно в строках MODULE_NAME и IMAGE_NAME.
В моем случае произошел сбой в работе драйвера srv.sys. В строке MODULE_NAME имя представлено в виде ссылке, щелкнув по которому можно получить информацию о модуле.
После выявления драйвера послужившего причиной сбоя в работе Windows и появления «Синего экрана смерти» необходимо попытаться обновить его.
Большинство проблем с драйверами решаются их обновлением.
Использование дампа памяти для диагностики сбоев
Одним из наиболее часто встречающихся отказов работы Windows — системные исключения, которые пользователь видит в виде «синего экрана смерти» (BSOD). Как правило, эта фатальная ошибка возникает или из-за неисправности драйверов, оборудования (чаще при загрузке ОС) или из-за действия вирусов и антивирусов.
На синем экране смерти содержится информация о причинах, вызвавших исключение (в виде кода STOP-ошибки вида 0x0000007b), адреса в памяти, при обращении к которым произошло исключение и прочая полезная информация. Такая информация называется STOP-ошибкой, переменными параметрами которой как раз являются адреса памяти. Иногда там же содержится имя файла, вызвавшего исключение.
Вся эта информация содержится на экране недолго (до 100 сек.), после чего компьютер перезагружается. Во это непродолжительное время как правило, формируется дамп памяти, который записывается в файл. Один из важных профессиональных способов диагностики сбоев — анализ дампа памяти, о котором речь подробно пойдет в этой статье.
Что такое дамп
Настройки для сохранения дампа памяти хранятся в системном реестре Windows.
Информация о дампе памяти в системном Реестре:
В разделе Реестра Windows [HKEY_LOCAL_MACHINE\SYSTEM\CurrentControlSet\Control\CrashControl] аварийный дамп памяти определяется следующими параметрами:
– REG_DWORD-параметр AutoReboot со значением 0x1 (опция Выполнить автоматическую перезагрузку вспомогательного окна Загрузка и восстановление диалогового окна Свойства системы);
– REG_DWORD-параметр CrashDumpEnabled со значением 0x0, если дамп памяти не создается; 0x1 – Полный дамп памяти; 0x2 – Дамп памяти ядра; 0x3 – Малый дамп памяти (64КБ);
– REG_EXPAND_SZ-параметр DumpFile со значением по умолчанию %SystemRoot%\MEMORY.DMP (место хранения файла дампа);
– REG_DWORD-параметр LogEvent со значением по умолчанию 0x1 (опция Записать событие в системный журнал окна Загрузка и восстановление);
– REG_EXPAND_SZ-параметр MinidumpDir со значением по умолчанию %SystemRoot%\Minidump (опция Папка малого дампа окна Загрузка и восстановление);
– REG_DWORD-параметр Overwrite со значением по умолчанию 0x1 (опция Заменять существующий файл дампа окна Загрузка и восстановление);
– REG_DWORD-параметр SendAlert со значением по умолчанию 0x1 (опция Отправить административное оповещение окна Загрузка и восстановление).
Как система создает файл аварийного дампа памяти
Во время загрузки операционная система проверяет параметры создания аварийного дампа в разделе реестра [HKEY_LOCAL_MACHINE\SYSTEM\CurrentControlSet\Control\CrashControl]. Если указан хотя бы один параметр, то система генерирует карту блоков диска, занимаемых файлом подкачки на загрузочном томе, и сохраняет ее в памяти. Система также определяет, какой драйвер дискового устройства управляет загрузочным томом, вычисляет контрольные суммы для образа драйвера в памяти и для структур данных, которые должны быть целыми, чтобы драйвер мог выполнять операции ввода/вывода.
После сбоя ядро системы проверяет целостность карты страничного файла, дискового драйвера и управляющих структур дискового драйвера. Если целостность этих структур не нарушена, то ядро системы вызывает специальные функции ввода/вывода дискового драйвера, предназначенные для сохранения образа памяти после системного сбоя. Эти функции ввода/вывода самодостаточны и не полагаются на службы ядра системы, поскольку в программах, отвечающих за запись аварийного дампа, нельзя делать никаких предположений о том, какие части ядра системы или драйверы устройств при сбое были повреждены. Ядро системы записывает данные из памяти по карте секторов файла подкачки (при этом ему не приходится использовать драйверы файловой системы).
Сначала ядро системы проверяет состояние каждого компонента, задействованного в процессе сохранения дампа. Это делается для того, чтобы при прямой записи в секторы диска не повредить данные, лежащие вне страничного файла. Размер страничного файла должен быть на 1МБ больше размера физической памяти, потому что при записи информации в дамп создается заголовок, в котором содержатся сигнатура аварийного дампа и значения нескольких важнейших переменных ядра системы. Заголовок занимает меньше 1МБ, но операционная система может увеличивать (или уменьшать) размер файла подкачки не менее чем на 1МБ.
После загрузки системы Session Manager (Диспетчер сеанса Windows NT; дисковый адрес – \WINDOWS\system32\smss.exe) инициализирует страничные файлы системы, используя для создания каждого файла собственную функцию NtCreatePagingFile. NtCreatePagingFile определяет, существует ли инициализируемый страничный файл, и если да, то имеется ли в нем заголовок дампа. Если заголовок есть, то NtCreatePagingFile посылает в Session Manager специальный код. После этого Session Manager запускает процесс Winlogon (Программа входа в систему Windows NT; дисковый адрес – \WINDOWS\system32\winlogon.exe), который извещается о существовании аварийного дампа. Winlogon запускает программу SaveDump (Программа сохранения копии памяти Windows NT; дисковый адрес – \WINDOWS\system32\savedump.exe), которая анализирует заголовок дампа и определяет дальнейшие действия в аварийной ситуации.
Если заголовок указывает на существование дампа, то SaveDump копирует данные из страничного файла в файл аварийного дампа, имя которого задано REG_EXPAND_SZ-параметром DumpFile раздела Реестра [HKEY_LOCAL_MACHINE\SYSTEM\CurrentControlSet\Control\CrashControl]. Пока SaveDump переписывает файл дампа, операционная система не задействует ту часть страничного файла, в которой содержится аварийный дамп. В это время объем виртуальной памяти, доступной для системы и приложений, уменьшается на размер дампа (при этом на экране могут появиться сообщения, указывающие на нехватку виртуальной памяти). Затем SaveDump информирует диспетчер памяти о завершении сохранения дампа, и тот высвобождает ту часть страничного файла, в которой хранится дамп, для общего пользования.
Сохранив файл дампа, программа SaveDump делает запись о создании аварийного дампа в журнале событий Система, например: «Компьютер был перезагружен после критической ошибки: 0x100000d1 (0xc84d90a6, 0x00000010, 0x00000000, 0xc84d90a6). Копия памяти сохранена: C:\WINDOWS\Minidump\Mini060309-01.dmp».
Если включена опция Отправить административное оповещение, то SaveDump отправляет оповещение администратору.
Разновидности дампов
При возникновении новой ошибки и создании нового файла полного дампа памяти предыдущий файл заменяется.
Этот дамп не включает нераспределенную память или память, выделенную для программ пользовательского режима. Он включает только память, выделенную для ядра и аппаратно-зависимого уровня (HAL) в Windows 2000 и более поздних версиях системы, а также память, выделенную для драйверов режима ядра и других программ режима ядра. В большинстве случаев такой дамп является наиболее предпочтительным вариантом. Он занимает намного меньше места по сравнению с полным дампом памяти, при этом исключая только те сектора памяти, которые, скорее всего, не связаны с ошибкой.
При возникновении новой ошибки и создании нового файла дампа памяти ядра предыдущий файл заменяется.
Файлы малого дампа памяти содержат следующие сведения:
Файл малого дампа памяти используется при ограниченном пространстве жесткого диска. Однако из-за ограниченности содержащихся в нем сведений в результате анализа этого файла не всегда удается обнаружить ошибки, которые не были непосредственно вызваны потоком, выполнявшимся в момент ее возникновения.
При возникновении следующей ошибки и создании второго файла малого дампа памяти предыдущий файл сохраняется. Каждому дополнительному файлу дается уникальное имя. Дата закодирована в имени файла. Например, Mini051509-01.dmp — это первый файл дампа памяти, созданный 15 мая 2009 г. Список всех файлов малого дампа памяти хранится в папке %SystemRoot%\Minidump.
Операционная система Windows XP, несомненно, значительно надежнее предыдущих версий, – благодаря усилиям как разработчиков Microsoft, так и разработчиков драйверов аппаратного обеспечения, так и разработчиков прикладного программного обеспечения. Однако аварийные ситуации – всевозможные сбои и крахи системы – неизбежны, и от того, владеет ли пользователь ПК знаниями и навыками в их устранении, зависит, придется ему затратить несколько минут на поиск и устранение неисправности (например, на обновление/отладку драйвера или переустановку прикладной программы, вызывающей системный сбой), – или несколько часов на переустановку/настройку операционной системы и прикладного программного обеспечения (что не гарантирует отсутствия сбоев и крахов в дальнейшем!).
Многие системные администраторы всё еще пренебрегают анализом аварийных дампов Windows, считая, что работать с ними слишком трудно. Трудно, но можно: даже если, например, анализ одного дампа из десяти окажется успешным, – усилия, потраченные на освоение простейших приемов анализа аварийных дампов, будут не напрасны.
Приведу примеры из своей «сисадминской» практики.
В локальной сети без видимой причины («железо» в порядке, отсутствие вирусов гарантировано, пользователи – с «нормальными руками») «полегли» несколько рабочих станций с Windows XP SP1/SP2 «на борту». Компьютеры загрузить в нормальном режиме не удавалось, – доходило до «Приветствия» – и на перезагрузку до бесконечности. При этом, в Безопасном режиме ПК загружались.
Изучение дампов памяти позволило выявить причину неисправности: виновником оказался антивирус Касперского, точнее, свежие антивирусные базы (если еще точнее, то два модуля баз – base372c.avc, base032c.avc).
В обоих указанных случаях изучение аварийного дампа памяти позволило до минимума (несколько минут!) свести время для диагностирования и устранения неисправности.
Анализ дампа памяти
Для анализа аварийных дампов памяти существует множество программ, например, DumpChk, Kanalyze, WinDbg. Рассмотрим анализ аварийных дампов памяти с помощью программы WinDbg (входит в состав Debugging Tools for Windows).
Как создать файл дампа?
Что значит создать файл дампа?
Файл дампа — это моментальный снимок, который показывает выполняющийся процесс и модули, которые были загружены для приложения в определенный момент времени. … Тестировщики также создают дампы, чтобы сохранить данные о сбоях или зависании программы, чтобы использовать их для дальнейшего тестирования. Отладчик Visual Studio может сохранять файлы дампа для управляемого или собственного кода.
Как создать файл дампа в Windows 10?
Перейдите в раздел «Запуск и восстановление»> «Настройки». Появится новое окно. В разделе «Запись отладочной информации» в раскрывающемся меню выберите «Полный дамп памяти» и при необходимости измените путь к файлу дампа. Нажмите ОК и перезагрузите систему.
Как создать файл аварийного дампа?
Совет: автоматически создавать файл аварийного дампа при ошибке
Где диспетчер задач сохраняет файлы дампа?
Файлы дампа, созданные диспетчером задач, обычно записываются в каталог TEMP пользователя, который запускает диспетчер задач, например «C: Users AppData Local Temp «. Диспетчер задач отобразит имя и расположение файла дампа после записи дампа.
Где находятся файлы дампа?
dmp означает, что это первый файл дампа 17 августа 2020 года. Вы можете найти эти файлы в папке% SystemRoot% Minidump на вашем компьютере.
Где находятся файлы дампа в Windows 10?
Файл дампа памяти обычно находится в% SystemRoot% MEMORY. DMP.
Как прочитать файл дампа памяти?
Как просмотреть содержимое файла дампа в Windows 10
Как создать файл дампа Windows?
Нажмите Ctrl + Alt + Delete на клавиатуре. Выберите Диспетчер задач. Щелкните правой кнопкой мыши процесс, для которого необходимо создать файл дампа. Выберите «Создать файл дампа».
…
Скопируйте путь к файлу дампа.
Что такое дамп системной памяти?
Дамп памяти — это процесс извлечения всего информационного содержимого из ОЗУ и записи его на накопитель. … Дампы памяти видны на синем экране ошибки смерти в операционных системах Microsoft.
Как принудительно создать аварийный дамп в Windows?
Чтобы вручную заставить Windows создать файл дампа, нажмите и удерживайте крайнюю правую клавишу CTRL, а затем дважды нажмите клавишу Scroll Lock. Так как это приведет к сбою Windows, это никогда не должно выполняться на рабочем сервере, который работает нормально.
Как собрать дамп BSOD?
Для Windows 8.1 и Windows 10
Где находится аварийный дамп Windows?
Как сделать дамп памяти?
Включить полные дампы памяти
Как мне вывести из строя процесс Windows?
Нажмите Ctrl + Shift + Esc, чтобы запустить диспетчер задач, если он еще не запущен. Перейдите на вкладку «Процессы», найдите и щелкните свое приложение в списке (щелкните заголовок столбца «Имя», если приложение и фоновые процессы смешаны). Щелкните приложение правой кнопкой мыши, выберите «Завершить задачу», и диспетчер задач отправит в это окно сообщение «Завершить».