Этот ответ относится ко второй части вопроса ОП - «Могу ли я что-то с этим сделать?" Да!
Windows Vista и более поздние версии позволяют указывать нечто, называемое "выделенный файл дампа". (Я буду использовать DDF для краткости.)
Думайте об этом как о файле подкачки, но ОС было сказано никогда не использовать его для файла подкачки (тем самым сохраняя фактический ввод-вывод файла подкачки на диске подкачки). Но так как он "похож на файл подкачки", ОС может использовать его для временного хранения информации дампа во время BSOD. После перезагрузки он будет скопирован в файл дампа, который вы указали обычным способом.
Более того, DDF даже не должен быть в вашем загрузочном разделе! Это может быть «любой локальный том, который может поддерживать файл подкачки». (Это устраняет необходимость в съемных дисках, таких как что-либо на USB, и кластерном хранилище Windows.)
Настроить его легко, но пользовательского интерфейса нет, поэтому он требует изменения реестра.
В разделе реестра HKEY_LOCAL_MACHINE\System\CurrentControlSet\Control\CrashControl
создайте значение с именем DedicatedDumpFile
типа REG_SZ. Задайте в строке полный путь к месту, где вы хотите, чтобы DDF был. Вам не нужно предварительно создавать файл самостоятельно. Например, C:\DUMPTEMP.SYS
По умолчанию ОС установит свой размер RAM + 256 МБ. Вы можете указать размер вручную с помощью другого значения реестра в том же ключе: Имя значения DumpFileSize
, введите REG_DWORD, значение = требуемый размер в мегабайтах. И это будут "двоичные мегабайты" в стиле Microsoft. Поэтому, если вы хотите, чтобы оно было "4 ГБ", то есть "4 ГиБ", вам следует использовать значение 1024 здесь.
Больше информации в этой статье MSDN.
Хотя, находясь здесь, я бы почувствовал себя опрометчиво, если бы не указал, что "физически разделенный файл подкачки" обычно мало что меняет, если вы не обращаетесь к нему много ... более эффективно добавить оперативную память.
Все exe, dll и другие сопоставленные файлы, которые используют все ваши процессы? По сути, это тоже файлы подкачки! Таким образом, перемещение вашего файла подкачки на другой диск изолирует пейджинговый ввод-вывод для этого одного файла. Ваша система будет по-прежнему выполнять пейджинг, а в некоторых случаях - и все остальные файлы, отображенные в памяти на вашем диске ОС.
Точно так же отключение вашего файла подкачки не устраняет подкачку с диска (и, конечно, не отключает виртуальную память) - оно удаляет только один из нескольких сотен файлов, из которых страницы ОС.
Однако перенос вашего единственного файла подкачки на диск сам по себе позволяет вам использовать счетчики производительности дискового ввода-вывода для этого накопителя, чтобы выяснить, сколько реально выполняет ввод-вывод файлов подкачки в вашей системе. Другого способа сделать это не существует, поскольку счетчики PerfMon, такие как «операции чтения страниц», включают в себя операции чтения страниц для всех этих отображенных в память файлов, таких как exe и dll.