Диагностика медленной загрузки Windows с помощью Process Monitor | Windows для системных администраторов

Диагностика медленной загрузки Windows с помощью Process Monitor

Для диагностики причин медленной загрузки ОС Windows существует ряд довольно мощных утилит и методик анализа журналов событий, позволяющих выполнить детальную отладку всех этапов процесса загрузки системы и запуска служб (xperf/xbootmgr из Windows Performance Toolkit / Analyzer). Но их использование  может вызвать ряд трудностей, особенно для начинающего системного администратора. В этой статье мы покажем, как с помощью Process Monitor можно довольно просто и быстро определить, какие программы, службы и драйвера долго выполняются при старте системы, увеличивая тем самым общее время загрузки для пользователя.

Безусловно,  всем системным администраторам Windows,  должна быть знакома утилита Process Monitor из комплекта системных утилит Sysinternals. Утилита Process Monitor позволяет в реальном времени отслеживать активность запущенных процессов, обращения к файловой системе и реестру. Одной из малоизвестной функцией Process Monitor является возможность включения режима мониторинга процессов запускаемых во время загрузки Windows.

Для диагностики этапа загрузки, Process Monitor создает отдельную службу в разделе   реестра HKLM\SYSTEM\CurrentControlSet\Services. Данная служба загружает драйвер режима загрузки procmon23.sys, стартующий после запуска Winload.exe, который протоколирует активность всех, процессов выполняющихся во время запуска системы и входа пользователя.

  1. Скачайте и распакуйте архив с Process Monitor (http://download.sysinternals.com/files/ProcessMonitor.zip)
  2. Запустите с правами администратора файл procmon.exe
  3. В меню Options выберите пункт Enable Boot LoggingEnable Boot Logging  журналирование загрузки в Process Monitor
  4. В появившемся окне выберите опцию Generate thread profiling events -> Every second. В этом режиме драйвер procmon будет перехватывать состояние всех процессов каждую секундуenerate thread profiling events -> Every second
  5. Перезагрузите компьютер и дождитесь появления рабочего стола
  6. Драйвер procmon23.sys  будет записывать все события до тех пор, пока пользователь не запустит утилиту  Process Monitor . После этого режим протоколирования загрузки отключается.
  7. В окне Process Monitor соглашаемся с предложение сохранить собранные данные в файл.Сохранить журнал с акивностью при загрузки в файл
    Примечание. Если не остановить работу Process Monitor, то временный файл журнала %windir%\procmon.pmb со временем займет все свободное место на системном диске.
  8. Выберите каталог, в котором нужно сохранить файл и дождётесь его сохранения. В моем случае в целевом каталоге появилось три файла Bootlog .pml, Bootlog-1.pml и Bootlog-2.pml общим размером 700 Мб.
  9. Щелкните по заголовку таблицы в окне ProcMon, выберите Select Columns и включите отображение столбца DurationДобавить столбец (Duration ) длительность в ProcMon
  10. Создадим новый фильтр в меню Filter.Фильтр событий в Process Monitor
  11. В качестве параметра фильтрации укажем Duration, условие more than и значение 10. Нажмите кнопку Add и ОК.Найти все события, которые длились более 10 секунд
  12. Таким образом, в списке процессов окажутся только те процессы, у которых на выполнение некоторых операций ушло больше 10 секунд (10 секунд я выбрал для большей наглядности примера).procmon bootlog
  13. Также для анализа процесса загрузки можно воспользоваться функцией в меню Tools ->Process Tree, позволяющей отобразить все процессы в виде графического дерева с информацией о начале, завершении и длительности процесса.Дерево процессов Process Monitor

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

Как правило, этот анализ поможет выявить «тормозящие» процессы, засевший в системе троян (в первую очередь нужно анализировать дочерние процессы Winlogon.exe), принять решение о необходимости удалить/обновить проблемное ПО или драйвер устройства, отключить некоторые службы или изменить тип их запуска (отложенный запуск или ручной по запросу), убрать программы из автозагрузки. Чаще всего в этом списке оказываются антивирусы и другое «тяжелое» ПО.

Еще записи по теме: Windows 10, Windows 7
Понравилась статья? Скажи спасибо и расскажи друзьям!
Назад:
Вперед:

Есть 1 комментарий

Оставить комментарий
  1. Дмитрий | 13.02.2017

    Отличная вырезка из статьи. В закладки. Но неплохо было бы и указывать первоисточник, коим является полуторагодовалая статья самого Марка Руссиновича о том, как у него на конференции долго грузился ноутбук и как он с этим боролся.

    Ответить
Полные правила комментирования на сайте winitpro.ru. Вопросы, не связанные с содержимым статьи или ее обсуждением удаляются.

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

Ваш e-mail не будет опубликован. Обязательные поля помечены *

Я не робот( Обязательно отметьте)



MAXCACHE: 0.25MB/0.00104 sec