Как проверить результаты оптимизации? Измеряем время загрузки Windows. Измерение времени загрузки компьютера и способы его сокращения

Загрузка Windows — процесс, который мы видим каждое утро, и мимо него нам пройти не удастся. Потому время загрузки является весьма важным показателем работы Windows. По легенде, именно ожидая загрузки Windows на своем компьютере, Билл Гейтс впервые увидел свою жену. Возможно, по этому в Microsoft так не спешили ускорять этот ежедневно портящий нервы многим пользователям процесс. Эта статья для тех, кто ждать не любит!

Почему скорость загрузки Windows снижается?

Windows — сложная операционная система. В ней одновременно работает (и, разумеется, стартует при загрузке компьютера) десятки процессов: службы, драйвера и пр. Как и во всех случаях, когда дорога одна, а участников движения много, при загрузке Windows образуются пробки. Вот их основные виновники.

Жесткий диск

Самый главный виновник медленной загрузки почти всегда ваш жесткий диск. Все файлы программ, служб и драйверов лежат именно на нем. И когда система их требует, то жесткому диску требуется определенное время, которое в свою очередь зависит от скорости и физической конструкции диска. Именно потому старт системы с SSD-диска происходит практически моментально — скорость произвольного чтения у этого типа дисков запредельная по сравнению жесткими дисками классической магнитной конструкции (HDD).

Одновременный старт большого количества программ

Все службы и программы при старте стартуют примерно в одно и то же время. Обычно возникающие коллизии система довольно быстро разрешает, но это если дело касается системных процессов. А если пользователь поставил какие-то свои программы в «Автозагрузку», то они могут при старте изрядно притормаживать работу других, да и в целом увеличивать время загрузки системы.

Более подробно о причинах замедления работы Windows и способах это исправить написано в нашей статье « «.

Как измерить и увеличить скорость загрузки Windows

Чтобы что-то оптимизировать и ускорять, нам требуется сначала измерить это. Сделать это можно несколькими способами.

С помощью утилиты Autorun Organizer

В современных версиях Windows проще всего использовать бесплатную утилиту от Chemtable Software. Она удобна тем, что использует для работы все штатные средства операционной системы, которые в самой системе разбросаны в разных местах и пользоваться которыми не так удобно, которые не так наглядны, как могли бы быть. По сути, это переработанный внешний вид для штатных средств Windows.

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

Помимо этого, в Autorun Organizer встроена проверка всех элементов автозагрузки сервисом , который проверяет файлы и ссылки на вирусы всеми известными ключевыми антивирусными системами сразу и выдает общий отчет о проверке. Так что с его помощью можно выявить вредоносные процессы в автозагрузке и принять меры.

Штатными средствами Windows 7 — 10

В Windows есть специальный журнал Diagnostics-Performance. Найти его можно тут: «Панель управления» — «Администрирование» — «Просмотр журналов событий» — «Журналы приложений и служб».

В нем информация представлена достаточно детально.

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

По этому коду в журнале отмечаются как раз события загрузки системы. Иногда такой способ позволяет найти тормозящую старт программу.

С помощью утилиты bootvis

В Windows более ранних, чем 7 — 10, для изучения процесса старта и разведения во времени одновременно стартующих программ использовалась утилита bootvis. После установки она делала анализ времени запуска системы, потом вносила в порядок старта программ корректировки и снова анализировала запуск. На Windows XP мне это часто помогало.

С помощью средств диагностики и устранения неполадок Windows 7 — 10

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

В Windows 7 — 10 диагностика старта системы доступна стандартными средствами диагностики и устранения неполадок. Основанные на инструменте PowerShell скрипты позволяют делать различные отчеты о процессе старта системы. Вот, например скрипт с сайта Вадима Стеркина , специалиста по Windows.

Преимущество работы скриптов для PowerShell по сравнению с ручным вылавливанием той же информации в журнале очевидны. Здесь отчет представляется на русском языке и с подробными комментариями.

Как вы можете помочь Windows запускаться быстрее

1. Уберите все ненужные программы из «автозагрузки». Это облегчит запуск системы. Чем меньше программ в автозагрузке, тем быстрее включается система.

3. Если есть возможность — используйте SSD-диск. Это позволит значительно ускорить скорость чтения данных с носителя, что в свою очередь напрямую влияет на скорости работы системы и на время загрузки в том числе.

Бесплатая программа для ускорения загрузки Windows посредством обнаружения и отключения ненужных системных процессов.

Не секрет, что со временем операционная система начинает грузиться все медленнее и медленнее. Прежде всего, это связано с тем, что только что установленная Windows «свободна» от дополнительного софта и драйверов, а следовательно тратит время только на загрузку «себя любимой»:).

Среднее время запуска для XP равняется 25–30 секундам, а для «Семерки» с Вистой — 40–45 с. Однако поработавшая даже непродолжительное время система будет заметно отклоняться от нормы. Величина отклонения будет прямо пропорциональна количеству программ и сервисов, находящихся в автозагрузке. А вот теперь главный вопрос: «Можно ли замерить и оптимизировать время загрузки ОС?».

Сегодня это стало возможным даже рядовому пользователю благодаря появлению утилиты Soluto !

Эта программа замеряет время полной загрузки Windows, после чего выдает подробную статистику по каждому запущенному приложению и рекомендации по оптимизации их работы. Последнее реализуется благодаря обширной он-лайновой базе данных, которую пополняют сами пользователи.

Таким образом, Soluto это еще и дружное сообщество, где люди помогают друг другу советами по улучшению работы системы. Единственный минус этого сообщества — англоязычность, поскольку у нас программа пока еще не получила широкой популярности.

Утилит для измерения времени загрузки Windows существует достаточно, однако нет практически ни одной, которая могла бы по результатам замера дать пользователю какие-либо практические рекомендации. Похожим принципом работы обладает только связка программ от https://www.greatis.com/ BootRacer + BootLog XP. Сравним возможности бесплатного и коммерческого софта:

Сравнение Soluto с платным аналогом BootRacer + BootLog XP

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

Установка Soluto

Для работы с Soluto у нас должен быть установлен пакет.NET Framework. Если его нет, то программа при установке предложит его скачать и инсталлировать.

А теперь, собственно, об установке самой утилиты. Инсталлятор выполнен несколько нестандартно, поэтому немного поясню. Вначале появится окно, в котором нам нужно будет принять условия лицензии, нажав на кнопку «I Agree — Install»:

После чего появится другое окно, которое будет отображать прогресс установки:

Soluto автоматически проверит наличие «Фреймворка», создаст точку восстановления системы на случай сбоя, а затем приступит к скачиванию и установке собственных компонентов. Здесь нажимать ничего не надо — требуется просто ждать. По окончании установки появится следующее окно:

Здесь нам сообщается, что после перезапуска мы сможем увидеть время загрузки ПК и получим возможность сократить его. Если нет никаких нужных открытых программ, смело жмем «Reboot Now» и перезагружаемся.

Интерфейс Soluto

Теперь, когда компьютер загрузится, в левом нижнем углу мы увидим таймер, который отображает время до полной готовности ПК к работе:

Оптимизация загрузки операционной системы

Когда таймер остановится и высветит окончательный результат замера, под ним мы увидим ссылку «Learn more», по которой следует перейти для реализации следующего этапа работы Soluto — оптимизации загрузки:

В открывшемся окне мы увидим подробную статистику запуска всех компонентов системы и установленных приложений. При этом все они будут разбиты на три категории: «No-brainer» (зеленая секция), «Potentially removable» (оранжевая) и «Cannot be removed with Soluto» (серая секция).

Легко догадаться, что первая секция содержит программы, которые могут быть отключены без какого-либо ущерба для системы. Вторая — потенциально неважные, которые тоже можно выключить, ну а третья — те, которые непосредственно влияют на стабильность работы ПК и поэтому не могут быть отключены.

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

Информация о выбранном приложении или процессе начинается с его короткого описания. Ниже описывается рекомендуемое действие (раздел «Recomendation»). А еще ниже мы можем увидеть в виде диаграммы, как поступили другие пользователи с данной программой. После этого Вы сможете принять собственное решение, нажав одну из трех кнопок справа от диаграммы.

Немного подробнее о возможных вариантах решения. По умолчанию все процессы находятся в автозагрузке, что соответствует кнопке «In Boot». Остается два варианта: отключение процесса («Pause») или его задержка («Delay»).

«Pause» позволяет на время убрать приложения из автозагрузки, а «Delay» — откладывает время его запуска на определенный срок. То есть получается, что программа стартует не вместе со всей системой, а спустя пару минут после полной загрузки ПК.

Обратите свое внимание на кнопку «Advanced» под окошком с общей информацией о программе. Если Вы хотите подробнее узнать об особенностях или предназначении того или иного процесса, то по нажатию данной кнопки попадете в новое окошко с расширенной базой данных:

Большой плюс Soluto в том, что все отключенные процессы не удаляются, а только перемещаются в специальный раздел («Removed applications» (синего цвета)), из которого при желании могут быть легко восстановлены:

Также после отключения каждого из процессов Soluto автоматически перерассчитывает предположительное время загрузки ПК. Поэтому Вам достаточно лишь беглого взгляда на верхнюю часть окна программы, чтобы оценить реальную разницу между «было» и «стало» ;).

Последним элементом окна Soluto является раздел истории загрузок. Попасть в него можно, кликнув кнопку «History» в левом нижнем углу:

Здесь в виде графика отображена динамика изменений времени запуска ПК. Для просмотра точной статистики следует нажать на конкретную интересующую точку графика. Вернуться же к основному окну можно, снова кликнув кнопку в левом нижнем углу.

Дополнительные возможности программы

На этом знакомство с программой можно считать состоявшимся, но напоследок — парочка советов;). Soluto в неактивном состоянии отображается в виде значка в трее, кликнув по которому правой кнопкой мыши, можно получить доступ к некоторым дополнительным настройкам спрятанным в контекстных меню:

Во-первых, благодаря пункту корневого меню «Launch My Paused Apps» Вы одним кликом можете запустить все остановленные процессы.

Во-вторых, пункт «PC Readiness Monitor» позволяет настроить отображение таймера готовности ПК к работе (показывать при каждой загрузке, после изменений в автозапуске или вообще никогда).

И, в-третьих, в разделе «Advanced» Вы можете активировать опцию выключения Soluto сразу после запуска компьютера и отображения таймера (отмечаем галочкой первый пункт).

Выводы

Soluto, к сожалению, не панацея ото всех компьютерных бед, однако может здорово ускорить первоначальную загрузку ПК. Даже если он работает уже несколько лет кряду, и успел «обвешаться» кучей дополнительного софта, программа благодаря функции отстроченного запуска позволит загрузить в первую очередь только ядро системы и особо важные процессы.

Все остальное пусть подгружается уже во время работы компьютера. Это даст Вам возможность начинать работать с ОС непосредственно после ее загрузки так, как со вновь установленной, избавив Вас от долгого ожидания готовности ПК к выполнению нужных действий!!!

P.S. Разрешается свободно копировать и цитировать данную статью при условии указания открытой активной ссылки на источник и сохранения авторства Руслана Тертышного.

Программа Bootrase.

Многие из Вас, наверняка замечали, что в процессе эксплуатации скорость запуска компьютера падает. У некоторых пользователей запуск компьютера занимает «целую вечность». Происходит это по нескольким причинам, например, по причине большого количества программ которые автоматически запускаются при включении компьютера. Есть и другие причины.
Можно ли измерить скорость загрузки компьютера, а главное, ускорить этот процесс?
Конечно. Ниже мы рассмотрим, как это сделать.
Итак, по порядку. Для измерения времени загрузки компьютера есть несколько хороших программ. Я рекомендую попробовать простую бесплатную программу под названием Bootrase.
Внимание!
Предупреждаю сразу, будем использовать программу Bootrase только для измерений. Кнопку «Ускорить», которая присутствует в окне программы Bootrase, игнорируем! При её нажатии происходит перенаправление на страницу скачивания одной платной, и как считают многие пользователи, бесполезной, для ускорения загрузки компьютера программы.

Скачиваем программу Bootrase на официальном сайте разработчика по ссылке . Выбираем версию программы с русским интерфейсом.


Программа Bootrase скачивается в архиве. Распаковываем её на рабочий стол и открываем папку с программой.


Запускаем установку программы Bootrase.


Программа Bootrase установлена и готова к работе. Для удобного использования программы создайте ярлык этой программы на рабочем столе.
Информация для новичков.
Для того, чтобы создать ярлык программы, найдите папку с программой Bootrase (путь: Пуск - Локальный диск C - Program files - BootRaser). В этой папке найдите файл Bootrase.exe. Кликните по нему правой кнопкой мыши и в выпавшем контекстном меню кликните пункт «Отправить…» и выберите «На рабочий стол (создать ярлык)».


Итак, продолжим. Запускаем тестирование.


Перезагружаем компьютер.


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


Теперь, о том, как постараться сократить это время.
Для начала уберем из автозагрузки все программы, запуск которых вместе с запуском операционной системы, нежелателен.
Для этого на клавиатуре одновременно нажимаем две кнопки «Win+R».
Информация для новичков.
Кнопка Win на клавиатуре с изображением значка Windows (расположена в левой нижней части).
В появившемся окне в строчке «Выполнить» пишем слово msconfig и кликаем «ОК».


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


Вам будет предложено перезагрузить компьютер. Но этого делать не стоит. Так как процесс оптимизации загрузки ещё не завершён.


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


Здесь ставим галочку в чикбоксе напротив строчки «Число процессоров» и выбираем их максимальное количество. Затем кликаем кнопку «ОК».


Здесь закончили. Теперь нужно исправить и почистить реестр. Для этого также существует несколько хороших программ. Я рекомендую использовать бесплатную программу под названием Auslogics Registry Cleaner. Скачать эту программу, а также подробно узнать как её установить и как ей пользоваться можно по ссылке .
После завершения этого процесса вновь тестируем время запуска компьютера (запускаем программу Bootrase).
Мой результат после оптимизации ниже.


Подпишитесь на обновления RSS заголовков от:
Создано FeedBurner

Запуск Windows , а точнее время его, может очень о многом рассказать. По этому параметру сразу видно, насколько оптимизирован компьютер, как о нём заботится владелец и в каких, иногда просто чудовищных, условиях приходится ему ежедневно работать.

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

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

Программа BootRacer не только приятна внешне и проста в использовании, но и очень заботливая относительно системных ресурсов — после своей работы она автоматически выключается, а не остаётся висеть в процессах, как делает 99% программ!

Итак, давайте уже перейдём от слов к делу и замеряем запуск Windows

Скачать BootRacer

Программа легко работает с ОС Windows 2000/XP/2003/Vista/2008/Seven/Windows 8 (32 или 64 бит).



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

Сразу после окончании установки, BootRacer запустится автоматически и покажет Вам время последнего запуска системы (она возьмёт его из системного журнала, если ведение его не отключено у Вас).

Не спешите жать на кнопку «Ускорить!» …

Вас начнут уговаривать установить очередную «ускорительную» , платную утилиту. Не будем винить производителей — им ведь тоже кушать хочется. Просто игнорируйте эту кнопку и всё — я предупредил.

А вот на кнопку «История» … ой, забежал вперёд — про эти кнопки напишу ниже.

Если нажать на…

…появится такое «устрашающе» окно…

Нажмёте «Да» — получите моментальное завершение работы системы и её перезагрузку, а если «Нет» , то замер скорости загрузки Windows будет произведён при следующем включении компьютера.

При клике на кнопке с шестерёнкой и названием «Функции» сможете попасть в настройки (остальные пункты этой кнопки бесполезны — они на английском языке). Там всё понятно и логично, только не забудьте о всех вкладках…

Лично я там ничего не трогал и не менял.

Полученная при замере времени старта системы информация дублируется окошком из трея…

Действительно, почему?!

Если не наводить курсор мыши на «живой язык» с вопросом, то там будет таймер с обратным отсчётом до выключения программы.

Разыгрался у меня спортивный интерес — удалил из автозагрузки пару программ и замерил снова…

Справа, из трея вылезло…

«Подкалывают» , гады! Но ничего, сейчас я им устрою…

Как? Да очень просто! Путём отключения некоторых служб, вроде службы печати и т.д. …

Удаляю полностью весь пакет кодеков K-Lite Codec Pack (благо, что пользуюсь плеером со встроенными кодеками)…

Отключаю всю защиту…

Отключаю операционную систему…

На этом этапе решил остановиться, а то действительно удалю всю систему подчистую.

Кстати, при каждом запуске Windows Вас будут оповещать о достижениях…

…или про замедление запуска…

…что может дать повод проверить, не затесался ли какой-то вирус в автозагрузку, например.

А вот теперь и о кнопочках немного можно сказать. Средняя кнопка «История» перенесёт Вас в очень красочную, подробную и эффектную историю Ваших побед и неудач…

А вот и страница официального сайта программы BootRacer , где пользователи хвастаются своими достижениями.

Сразу становится видна зависимость скорости запуска Windows от комплектующих. Если бы у меня было 16 Гб оперативной памяти DDR3-формата с частотой за 1600 Мгц (а не 3Гб), SSD-диск на SATA3 (а не SATA2) и четырёхъядерный процессор Core i7 (4,4 ГГц), а не старенький двухъядерный Celeron, то смею предположить, что рекорд мой был бы ниже планки в 10 сек.

Наверное, многие пользователи сталкивались с тем, что со временем операционная система начинает загружаться всё медленнее. Чем больше программ и различных приложений установлено на компьютере, тем дольше система грузится. Более того, время отклика системы на действия пользователя напрямую зависит от количества и качества установленных приложений. Объясняется это тем, что многие приложения не только занимают место на диске, но и заносят информацию о себе в различные реестры операционной системы. При этом неважно, будут ли это записи об ассоциации конкретных файлов с этим приложением, автозапуск некоторых модулей либо другая информация, так как при загрузке ОС все эти данные так или иначе проверяются и повторно записываются в реестре ОС. Соответственно чем больше таких записей, тем дольше грузится операционная система, поскольку реестр, как и любая другая база данных, с увеличением хранимой в нем информации, а также расширением структуры данных медленнее отзывается на любые запросы. Наилучшим способом решения данной проблемы является одно популярное, но в то же время сложное для многих пользователей действие - удаление и новая установка операционной системы. Очищение реестра с помощью специальных программ во многих случаях может дать отрицательный результат: не только нарушится целостность тех или иных программ, но и может стать неработоспособной операционная система.
В этой статье мы не будем рассматривать приемы по ускорению загрузки операционной системы - наша задача состоит в том, чтобы проанализировать, каким образом можно оценить время ее загрузки. Попробуем разобраться, как определить время загрузки системы на базе операционных систем Windows Vista и Windows 7.

По сравнению с предыдущими версиями Windows на базе Windows NT 5.0/5.1 (Windows 2000 и XP), новая платформа NT 6.0/6.1 (Windows Vista и 7) позволила достичь больших успехов в ускорении загрузки операционной системы за счет применения некоторых новых технологий. Однако в большинстве своем эти технологии нацелены на загрузку операционной системы не при холодном старте, а при выходе из режима гибернации или «сна». Это логично, поскольку многие пользователи или не выключают свои компьютеры вообще, или переводят их в режим «сна», из которого они затем автоматически переходят в режим гибернации. Измерение времени загрузки операционной системы следует выполнять только в случае холодного старта системы, так как в режиме «сна» или гибернации исходное состояние при запуске ОС будет различным, поскольку слепок системы каждый раз будет меняться в зависимости от работающих служб и приложений. Создать условие для режима гибернации, в котором слепок системы был бы идентичным, - сложная и трудоемкая задача. Поэтому мы будем рассматривать время загрузки системы после включения компьютера. Отметим, что в операционной системе Windows 8 будет применяться новая технология загрузки, представляющая собой своеобразный гибрид между загрузкой с нуля и режимом гибернации. Для того чтобы понять, как это будет работать, рассмотрим этапы загрузки и выключения операционной системы в Windows 7.

Выключение системы (Shutdown):

  1. Пользователь с помощью кнопки Shutdown (Выключение) или нажав кнопку выключения на системном блоке задействует функцию API ExitWindowsEx(); если выключение происходит посредством какого-либо приложения, то выполняется API-функция InitiateShutdown();
  2. Операционная система посылает команду всем работающим приложениям о том, что система будет выключена и им необходимо сохранить текущие данные как можно быстрее. В свою очередь, приложения могут несколько задержать процесс выключения, задействовав механизм выделения дополнительного времени для закрытия приложения;
  3. После успешного закрытия приложений или их принудительной остановки система закрывает все пользовательские сессии на компьютере;
  4. Выключаются работающие сервисы операционной системы. При этом часть сервисов выключается в определенном порядке, так как они зависят друг от друга. Остальные сервисы выключаются в несколько потоков одновременно. Если сервис не отвечает, то система останавливает его принудительно;
  5. После выключения всех сервисов Windows посылает команду выключения всем периферийным устройствам, поддерживающим автоматическое отключение;
  6. Система закрывает основную системную сессию (она имеет альтернативное название - session 0), проверяет целостность сохраненных пользовательских и системных данных на диске и впоследствии отсылает сигнал через ACPI-интерфейс для полного выключения компьютера.

Отметим, что процесс перезапуска происходит примерно так же, за исключением некоторых специфичных команд сервисам и другой команды ACPI-интерфейсу. Режимы «сна» и гибернации сильно отличаются от процесса выключения/перезапуска системы. Режим «сна» подразумевает мгновенную паузу всей системы (запущенных приложений и сервисов) и перевод компьютера в режим пониженного энергопотребления, при котором основные устройства всё равно остаются включенными. При гибернации содержимое оперативной памяти записывается на энергонезависимое устройство (жесткий диск), а компьютер выключается с помощью специальной команды через интерфейс ACPI и большинство его компонентов отключаются от питания. При последующем включении компьютера содержимое оперативной памяти восстанавливается из копии на диске - таким образом, пользователь может продолжить работу с того места, на котором он остановился (остаются запущенные приложения, несохраненные документы). Также следует отметить, что в операционной системе Windows Vista появилась дополнительная функция Гибридный спящий режим , когда содержимое оперативной памяти сбрасывается на диск, но питание большинства устройств не отключается. Если компьютер был отключен или пропало электропитание, ОС восстанавливается с диска, если нет - система выходит из ждущего режима ACPI.

Процесс запуска операционной системы при холодном старте состоит из следующих этапов:

  1. Нажатие на кнопку питания приводит к загрузке BIOS компьютера и процедуры тестирования его основных компонентов - POST (Power-On Self Test). При этом определяется и физический диск, с которого последует старт операционной системы;
  2. BIOS считывает информацию из MBR (Master Boot Record) и таким образом запускает утилиту Bootmgr.exe, которая, в свою очередь, ищет загрузчик Windows (Winload.exe) на диске и запускает его;
  3. Загрузчик инициализирует загрузку основных драйверов для последующего запуска операционной системы и сервиса сессий (session manager process - Smss.exe);
  4. Загрузка Smss.exe и представляет собой загрузку основной сессии системы (session 0), когда загружаются все драйверы, сервисы и другие элементы операционной системы;
  5. После успешного запуска основной сессии подгружаются оконный менеджер и групповые политики для локального ПК и домена, а затем после входа в систему запускается основная пользовательская сессия (User session) с помощью сервиса Winlogon.exe;
  6. Начинается загрузка рабочего стола пользователя и старт всех его приложений, которые промаркированы к автозапуску.

В операционной системе Windows 8 специалисты Microsoft внедрили новую функцию быстрого запуска системы, объединив режимы гибернации и полного выключения компьютера. Анализ действий пользователей ноутбуков и настольных компьютеров показал, что хотя режимы «сна» и гибернации популярны для портативных устройств (применяются примерно в 50% случаев), многие пользователи до сих пор полностью включают/выключают компьютер. Одних, видимо, пугает само слово и процесс, другие не используют режим «сна» из-за экономии электроэнергии, а третьи хотят, чтобы при включении компьютера создавалась чистая новая сессия пользователя без запущенных ранее приложений. Новая функция быстрой загрузки системы в Windows 8 отвечает этим требованиям и действует следующим образом (рис. 1). При выключении питания операционная система закрывает пользовательскую сессию полностью, то есть все приложения и сервисы выключаются. Однако основная системная сессия (session 0) не закрывается, а переводится в режим гибернации - на диске сохраняется слепок состояния сервисов и приложений данной сессии из оперативной памяти. После этого компьютер полностью выключается, что приводит к нулевому энергопотреблению. Тут стоит отметить, что не вся основная системная сессия переводится в режим гибернации - некоторая часть, относящаяся к драйверам устройств, может не переводиться в режим гибернации, если пользователь перед этим удалил или добавил новые драйверы. Такой метод выключения, действительно, должен стать более эффективным, поскольку системная сессия практически не подвержена изменению со стороны пользователя, а большинство хранимой в оперативной памяти информации этой сессии от перезапуска к перезапуску не изменяется. Загрузка основного ядра системы на лету позволяет сократить общее время загрузки системы на 30-70%. На сайте подразделения Microsoft по связи с разработчиками ПО (Microsoft Developer Network, msdn.com) этой новой технологии посвящена отдельная статья. Выход Windows 8 намечен на осень текущего года, и тогда, наверное, можно будет судить, как эта технология работает, а пока вернемся к загрузке операционных систем Windows Vista и 7.

Рис. 1. Принцип быстрого запуска ОС в Windows 8

В Интернете описано множество способов, как определить время загрузки операционной системы. Такая необходимость возникает по различным причинам: кому-то это нужно исключительно в практических целях, а кому-то просто из спортивного интереса или чтобы было чем похвастаться перед друзьями.

Рассмотрим основные способы получения данных о времени запуска системы. Первый и самый простой способ - это использование секундомера, имеющегося сейчас в любых электронных часах или мобильном телефоне. Тут всё просто - методика измерения не нуждается в пояснениях. Обычно самый простой путь является и самым правильным, но для данного метода характерна большая погрешность измерений. Следовательно, применять его на практике можно лишь в том случае, если точность результатов не слишком важна.

Вторым способом является анализ встроенных в Windows Vista/7 счетчиков и средств измерения производительности. Для того чтобы оценить время загрузки операционной системы, необходимо открыть специальную оснастку Для этого нужно последовательно пройти по следующим ссылкам: Панель управления -> Система -> Счетчики и средства производительности -> Дополнительные инструменты -> Просмотр сведений о производительности в журнале событий.

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

  • код 100 - общее время загрузки;
  • коды 101-199 - устройства, сервисы и приложения, где возникли задержки при запуске;
  • код 200 - общее время завершения работы;
  • коды 201-299 - устройства, сервисы и приложения, где возникли задержки при выходе.

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

Для каждого события можно посмотреть подробное описание и таким образом узнать подробности загрузки. Все данные в журнале указываются в миллисекундах. В событии с кодом 100 также можно отобразить интересующие вас данные по конкретным этапам загрузки:

  • MainPathBootTime - время для появления рабочего стола, включая все критические сервисы и драйверы, необходимые для основной работы системы;
  • BootKernelInitTime - инициализация ядра;
  • BootDriverInitTime - инициализация драйверов;
  • BootDevicesInitTime - инициализация железа;
  • BootSmssInitTime - инициализация диспетчера сеанса;
  • BootPostBootTime - время запуска всех некритических сервисов.

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

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

Четвертый способ - применение специального программного решения от компании Microsoft под названием Windows Performance Analysis Tools (WPT). Это набор из трех специализированных утилит: Xperf, Xperfview и Xbootmgr. Программное решение поставляется вместе с серверной операционной системой Windows 2008 R2 и служит для анализа производительности при загрузке системы. С помощью нехитрых команд, подробно описанных в документации к утилитам, пользователь может определить время загрузки каждого элемента основной системной сессии операционной системы, а также получить информацию о возникающих в процессе запуска ошибках и задержках. Увы, и эти утилиты не позволяют однозначно определить время полной загрузки системы, когда пользовательская сессия и все сопутствующие ей приложения запущены и не отнимают процессорного времени.

Внимательный читатель, наверное, задастся вопросом, почему особое внимание в описанных здесь способах уделяется времени загрузки приложений пользователя, а не старту системы в целом до процесса инициализации рабочего стола пользователя. Объяснение здесь довольно простое: для того чтобы оценить время загрузки отдельного ПК, правильнее начинать отсчет времени только после того, как все приложения пользователя будут запущены, а система будет находиться в «ждущем» режиме. К примеру, на чистой операционной системе скорость загрузки между двумя разными компьютерами с похожими конфигурациями, но с разными типами дисков SSD и HDD в большинстве случаев будет примерно одинаковой. Чтобы оценить преимущества использования того или иного диска, необходимо имитировать настоящий рабочий компьютер с кучей дополнительных приложений и сервисов. Более того, пользователю, который пытается измерить время загрузки операционной системы, важнее получить универсальное средство определения загрузки системы, а не ее отдельных элементов.

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

В операционной системе Windows Vista и 7 существует несколько этапов автоматической загрузки приложений пользователя. В реестре ОС есть три основные записи об автозагрузке приложений в ветках:

  • “HKLM\SOFTWARE\Microsoft\Windows\CurrentVersion\Run”;
  • “HKCU\Software\Microsoft\Windows\CurrentVersion\Run”;
  • “HKLM\SOFTWARE\Wow6432Node\Microsoft\Windows\CurrentVersion\Run” (только для 64-битной версии ОС).

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

  • %SystemDrive%\ProgramData\Microsoft\Windows\Start Menu\Programs\Startup;
  • %SystemDrive%\Users\%USERNAME%\AppData\Roaming\Microsoft\Windows\Start Menu\Programs\Startup,

где %SystemDrive% - это переменная системного диска, а %USERNAME% - имя текущего пользователя системы.

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

Прежде всего попытаемся определить, каким образом начинать отсчет времени запуска операционной системы. Заходить в BIOS и засекать время запуска не есть правильное решение, поскольку этот способ не обеспечивает точности измерений. К счастью, компания Microsoft внедрила в свои операционные системы своеобразный таймер запуска, который инициализируется, по всей видимости, в начале загрузки основной системной сессии. В английском варианте операционной системы параметр времени запуска операционной системы называется System Boot Time. В русскоязычной версии он носит название Время загрузки системы . Получить эти данные можно, набрав в командной строке от лица администратора команды, изображенные на рис. 2 и 3.

Рис. 2. Команда для русскоязычной версии ОС

Рис. 3. Команда для англоязычной версии ОС

Если со временем старта системы всё довольно просто, то выявление времени готовности операционной системы к действиям пользователя сопряжено со многими трудностями. На наш взгляд, точно определить время готовности ОС в этом случае нельзя. Можно лишь зафиксировать тот момент, когда операционная система перестает запускать приложения, описанные в автозапуске, и переходит в своеобразный «ждущий режим». В данном случае под «ждущим режимом» мы подразумеваем момент, когда приложения не работают с жестким диском. При этом нагрузка на процессор составляет на более 5%. Для определения производительности этих компонентов - процессора и диска - в операционных системах на базе Windows есть специальные счетчики производительности.

Рядовой пользователь может вывести информацию о текущей загрузке процессора и диска с помощью специальной оснастки. Она называется Системный монитор (рис. 4)и находится в Панель управления ® Все элементы панели управления ® Администрирование. По умолчанию при открытии системного монитора пользователю уже показывается общая текущая загрузка центрального процессора. При необходимости он может добавить счетчик загруженности любого из дисков (Добавить счетчики ® Физический диск ), установленных в компьютере. Анализируя эти показатели, можно определить тот момент, когда на протяжении длительного времени загрузка этих параметров минимальна, что говорит о том, что система полностью загрузилась и готова к работе. То есть все приложения и сервисы пользователя, находящиеся в автозапуске, успешно запущены и функционируют. Нельзя не отметить, что показания счетчиков производительности можно получить не только через описанную оснастку, но и через специальные запросы к базе данных Windows Management Instrumentation (WMI). WMI - это инструментарий управления Windows, то есть одна из базовых технологий для централизованного управления и слежения за работой различных частей компьютерной инфраструктуры под управлением платформы Windows. В ней находится масса данных о состоянии компьютера, а доступ к ней можно получить через запросы языка VBA или других аналогичных, которые могут задействовать API операционной системы.