При возникновении сбоя в работе Windows в файл MEMORY.DMP записывается все содержимое оперативной памяти (memory dump — “дамп” памяти), что позволяет разобраться в причине сбоя.

На самом деле, для решения этой проблемы необходима только информация, содержащаяся в памяти ядра системы. ОС Windows XP предоставляет возможность указать, что при сбое в работе понадобится сохранение только содержимого памяти ядра.

Зачем это понадобится? Предположим, что в системе установлено 128 Мбайт оперативной памяти и компьютер завершает свою работу в аварийном режиме. В итоге получается файл с содержимым оперативной памяти объемом 128 Мбайт. Это достаточно большой файл, который, тем не менее, можно передать компании Microsoft по протоколу FTP.

Теперь представим, что оперативная система установлена на сервере с огромным объемом оперативной памяти, который служит хранилищем данных. Хотя компания Microsoft и в состоянии принять даже такой файл MEMORY.DMP сервера, никто не пострадает, если размер файла не будет столь большим.

Запись содержимого памяти ядра на компьютере с 128 Мбайт ОЗУ приводит к получению файла размером около 35 Мбайт, что составляет около 27% от первоначального размера файла “дампа”.

Для записи в файл содержимого только памяти ядра сделайте следующее.

  1.  Откройте меню Система (System) из окна Панель управления (Control Panel).

  2.  Перескочите на вкладку Дополнительно (Advanced) и кликните на кнопке Загрузка и восстановление (Startup and Recovery).

  3.  В разделе Запись отладочной информации (Write Debugging Information) выберите команду Дамп памяти ядра (Kernel Memory Dump).

  4.  Кликните на кнопке OK.

  5.  Перезагрузите компьютер для того, чтобы произведенные изменения вступили в силу.

Кроме того, запись содержимого памяти программного ядра можно активировать, внеся изменения в системный реестр. При этом записи HKEY_LOCAL_MACHINE\SYSTEM\CurrentControlSet\Control\CrashControl\CrashDumpEnabled
необходимо присвоить значение 2 для записи только данных памяти ядра или значение 3 — для записи сокращенной версии содержимого памяти. Кроме того, записи DumpFile в этом разделе должно быть присвоено значение, равное пути к файлу “дампа”, например, %SystemRoot%\Memory.dmp.