Как стать автором
Обновить

В поисках оптимизации загрузки Vista

Время на прочтение 3 мин
Количество просмотров 4.7K
Время, требуемое для загрузки операционной системы, для многих пользователей является достаточно критичным фактором, особенно для владельцев ноутбуков. Нормальное время от прохождения BIOS до загрузки рабочего стола в Windows Vista составляет в среднем 25-90 секунд, в зависимости от конфигурации оборудования, драйверов и работы сервисов. Иногда пользователи сталкиваются с ситуацией, когда время загрузки системы растягивается до неприемлимых 5-10 минут, что сигнализирует о проблеме, которую необходимо решить во избежание возможных неприятностей со стабильностью и вероятной потерей данных.

Пока я загружаюсь, вы можете выгулять свою собачку

В этой небольшой статье попробуем рассмотреть решение подобных неприятностей с помощью встроенных в Vista средств мониторинга. На русском языке почему-то этого никто ранее не делал.

Отслеживать запуск Windows XP можно было при помощи утилиты Bootvis производства Microsoft, которая наглядно отражала все тонкости процесса загрузки, такие как задержки драйверов, время операций ввода-вывода, нагрузку на процессор и много других полезных данных. К сожалению в Windows Vista такой программы мы не имеем, но совсем без инструментов нас не оставили.

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

Существует специальный журнале Diagnostics-Performance, который можно открыть в Администрирование -> Просмотре событий или Панель управления -> Счетчики и средства производительности -> Дополнительные инструменты -> Просмотр сведений о производительности в журнале событий.

Просмотр сведений о производительности в журнале событий

В журнал стекается информация не только по загрузке, но и по завершению работы Vista. Событиям присваивается определенный код, по которому можно определить их сущность:
  • Код 100 — время загрузки, общее
  • Коды 101-199 — проблемная загрузка устройств, сервисов, приложений и пр.
  • Код 200 — время завершения работы, общее
  • Коды 201-299 — проблемное завершение процессов и т.п.

Данные о загрузке системы попадают в журнал не сразу, а спустя некоторое время после запуска, поэтому не удивляйтесь, что сведения о только что загруженной Vista в журнале отсутствуют. Подождите несколько минут.

Посмотрев в свойства последнего по времени события с кодом 100 можно узнать подробности загрузки. На закладке Общие видно время в целом потраченное на запуск. Данные нашего журнала указаны в миллисекундах, т.е. для перевода в секунды нужно убрать три последних цифры. На скриншоте видно, что система загружалась 138 секунд — почти две с половиной минуты. Долго!

Событие 100

Перейдем на закладку Подробности:

Событие 100 подробно

Кроме дубля информации по общей загрузке с первой закладки в параметре BootTime, нам может быть интересно следующее:
  • MainPathBootTime — суммированное время для появления рабочего стола, включая все критические сервисы и драйверы, необходимые для основной работы системы
  • BootKernelInitTime — инициализация ядра
  • BootDriverInitTime — инициализация драйверов
  • BootDevicesInitTime — инициализация железа
  • BootPrefetchInitTime — время работы суперпрефетчера
  • BootSmssInitTime — инициализация диспетчера сеанса
  • BootPostBootTime — время запуска всех некритических сервисов уже при готовом рабочем столе

Все данные на этой закладке можно выгрузить в XML, например, для сбора статистики по многократным запускам.

Сходу видно, что (для моего ноутубка) слишком долго инициализировались драйверы и диспетчер сеансов, поэтому стоит вернуться в Просмотр событий и взглянуть на прочие события с кодами 101-199 в попытке выявить тормозящий фактор. Внимательно просматривая журнал, находим событие под кодом 110:

Событие 110

По какой-то причине диспетчера сеансов инициализировался в шесть раз дольше обычного. Лишние 20 секунд найдены, ищем дальше. Поиски выявляют событие 109 — медленно загружающиеся каналы IDE:

Что это такое с ним?

Приведенный пример пришлось создавать искусственно для опубликования на Хабре, но применяя информацию из журнала Diagnostics-Performance на практике мне много раз удавалось выявлять проблемные места для загрузки системы, таких как случай с трехминутной загрузкой драйвера totrec.sys, принадлежащего программе Total Recorder.

Надеюсь, данная информация будет вам полезна. Продолжение оптимизации загрузки Windows Vista следует…
Теги:
Хабы:
+71
Комментарии 87
Комментарии Комментарии 87

Публикации

Истории

Работа

Ближайшие события

Московский туристический хакатон
Дата 23 марта – 7 апреля
Место
Москва Онлайн