У вас Windows быстро загружается? А как вы это определяете, на глазок или секундомером? В Windows XP меряли «вагончиками», но в Windows 7 и Windows Vista их убрали. Из этой статьи вы узнаете очень простой способ, позволяющий точно определить длительность загрузки вашей системы без дополнительных средств.
Новые операционные системы Microsoft собирают огромную массу информации о работе системы, сохраняя ее в журналах событий, которых тоже великое множество. На основе лишь одного события можно узнать интересные подробности о скорости загрузки.
Длительность загрузки в журнале Diagnostics-Performance

Windows 7 и Windows Vista отслеживают каждую загрузку системы и записывают отчет. Чтобы увидеть его, откройте Пуск – Поиск – Журнал событий и перейдите в раздел Журналы приложений и служб – Microsoft – Windows – Diagnostics -Performance. Там вы найдете один журнал, и он работает. Отчет о загрузке системы легко найти по коду события 100.
На рисунке желтым цветом выделено время загрузки в миллисекундах, поэтому 97634 ms означает 97 секунд, т.е. около полутора минут. Это время определяется от самого начала загрузки Windows (сразу после завершения загрузки BIOS) и вплоть до полной загрузки рабочего стола, т.е. до прекращения активности процессов, участвующих в загрузке. Из этого времени нужно вычесть 10 секунд, чтобы получить актуальное время загрузки.
Фильтр по событию

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

На вкладке Подробности вы можете посмотреть остальную информацию о загрузке системы, как в текстовом виде, так и в формате XML.
Назначение некоторых параметров можно разгадать без труда, а иные вовсе не очевидны. Наиболее интересными являются:

  • BootTime – общее время загрузки
  • BootUserProfileProcessingTime – время загрузки профиля
  • BootPostBootTime – время с момента появления рабочего стола до полного окончания загрузки
  • MainPathBootTime – длительность основных системных этапов загрузки (BootTIme минус BootPostBootTime)
  • BootNumStartupApps – количество программ в автозагрузке

Изрядная часть остальных параметров отражает длительность различных этапов загрузки, соответствуя их названиям. Но для диагностики загрузки этого маловато, потому что нет информации о том, что конкретно происходит на каждом этапе. Подробный рассказ об этапах загрузки Windows и их диагностике на примере отчетов утилиты xbootmgr, входящей в набор Windows Performance Analysis Tools вас ожидает в ближайших статьях.
Уровни события 100

Давайте вернемся к вопросу об уровнях события 100 и посмотрим, от чего зависит критичность времени загрузки.
Поскольку BootTime = BootTIme + BootPostBootTime, можно сделать такие выводы.

  • Предупреждение будет только в том случае, если быстро загружается как система (драйверы и службы), так и пользовательская среда (рабочий стол и программы в автозагрузке).
  • Как минимум Ошибка будет появляться, если общая длительность загрузки (BootTIme) больше 90 секунд.
  • Критический уровень вам гарантирован при общей длительности загрузки более двух минут.

События диагностики

Нередко система сама предлагает диагностическую информацию о загрузке в соседних событиях с тем же временем и кодами 101 – 109. Например, задержки по вине служб имеют код 103. Но далеко не всегда эта информация полезна для диагностики загрузки.
Здесь нужно обращать внимание на время замедления, потому что замедление свыше 0,1 секунды уже дает основание к записи события. На рисунке видно, что служба COM замедлилась на 0,26 секунды, что вряд ли стоит рассматривать всерьез. Подробнее об этом способе диагностики рассказ будет в отдельной статье моего коллеги.
Интерпретация сведений о загрузке

Выгоду можно извлечь даже из довольно скудной информации о длительности загрузки, если сопоставить ее с другими параметрами системы. Чтобы вам было интереснее, я подготовил диагностический пакет, основанный на PowerShell, который автоматизирует процесс сбора сведений и представляет их в наглядной форме.



Вадим Стеркин, outsidethebox.ms